蛇跟楼梯(BFS)-创新互联
样例输入:
当前标题:蛇跟楼梯(BFS)-创新互联
网站路径:http://hbruida.cn/article/dddcoc.html
2 // 测试数据个数
目前创新互联建站已为上千家的企业提供了网站建设、域名、网页空间、网站托管、企业网站设计、五通桥网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。6 1 3 // 棋盘大小 蛇的个数 梯子个数
35 25 // 蛇的起始位置(蛇头) 蛇的终止位置(蛇尾)
3 23 5 16 20 33 梯子起始位置(梯子底部) 梯子终止位置(顶部)
样例输出:
3
#include
#include
#define NMAX 20
#define SLMAX 200
struct SnakeAndLadder //蛇和梯子{
int from, to; //起止位置};
int main( )
{
int D; //测试数据的个数 int N, S, L; //每个测试数据中的N、S、L:棋盘规模、蛇和梯子数目 int grid[ NMAX*NMAX+1 ]; //棋盘(序号从1开始计)
//备份上一次棋盘状态(序号从1开始计) int gridbak[ NMAX*NMAX+1 ];
SnakeAndLadder obstacle[2*SLMAX ]; //障碍物,包括梯子和蛇 int i, j, k, m; //循环变量 int step; //投骰子的数目 int deal; //如果落脚处是蛇(惩罚)首部或梯子(奖励)底部,则deal为1
scanf("%d", &D );
for( i=0; iN*N )break;
for( m=0; m
当前标题:蛇跟楼梯(BFS)-创新互联
网站路径:http://hbruida.cn/article/dddcoc.html