当前位置: 首页 > news >正文

工程造价价格信息网seo外包优化服务商

工程造价价格信息网,seo外包优化服务商,电商平台需要办理什么许可证,个人网站设计目的题目渊源: 马踏棋盘问题(又称骑士周游问题或骑士漫游问题)是算法设计的经典问题之一。 题目要求: 国际象棋的棋盘为8*8的方格棋盘,现将“马”放在任意指定的方格中,按照“马”走棋的规则将“马”进行移动。…

题目渊源:

        马踏棋盘问题(又称骑士周游问题或骑士漫游问题)是算法设计的经典问题之一。

题目要求:

        国际象棋的棋盘为8*8的方格棋盘,现将“马”放在任意指定的方格中,按照“马”走棋的规则将“马”进行移动。要求每个方格只能进入一次,最终使得“马”走遍棋盘64个方格。

        

#include <stdio.h>
#include <time.h>#define X 8
#define Y 8int chess[X][Y];//找到基于(x,y)位置的下一个可走的位置 
int nextxy(int *x,int *y,int count)
{switch(count){case 0:if(*x+2<=X-1 && *y-1>=0 && chess[*x+2][*y-1]==0){*y+=2;*y-=1;return 1;}break;case 1:if(*x+2<=X-1 && *y+1<=Y-1 && chess[*x+2][*y+1]==0 ){*x+=2;*y+=1;return 1;}break;case 2:if(*x+1<=X-1 && *y-2>=0 && chess[*x+1][*y-2]==0 ){*x=*x+1;*y=*y-2;return 1;}break;case 3:if(*x+1<=X-1 && *y+2<=Y-1 && chess[*x+1][*y+2]==0){*x = *x+1;*y= *y+2;return 1;}break;case 4:if(*x-2>=0  && *y-1>=0 && chess[*x-2][*y-1]==0){*x= *x-2;*y= *y+1;return 1;}break;case 5:if(*x-2>=0 && *y+1<=Y-1 && chess[*x-2][*y+1]==0 ){*x= *x-2;*y = *y+1;return 1;}break;case 6:if(*x-1>=0 && *y-2>=0 && chess[*x-1][*y-2]==0){*x = *x - 1;*y = *y - 2;return 1;}break;case 7:if(*x-1>=0 && *y+2<=Y-1 && chess[*x-1][*y+2]==0){*x = *x -1;*y = *y +2;return 1;}break;default:break;} return 0;
} void print()
{int i,j;for(i=0;i<X;i++){for(j=0;j<Y;j++){printf("%2d\t",chess[i][j]);}printf("\n");}printf("\n");
}//深度优先遍历棋盘
//(x,y)为位置坐标
//tag是标记变量
int TravelChessBoard(int x,int y,int tag)
{int x1= x,y1=y,count =0,flag =0;chess[x][y] = tag;if(x*Y == tag){//打印棋盘print();return 1; }//找到马的下一个可走的坐标(x1,y1)flag = nextxy(&x1,&y1,count);while(0==flag && count<7){count++;}while(flag){if(TravelChessBoard(x1,y1,tag+1)){return 1;}//出现意外,找到马的下一步可走坐标(x1,y1) x1=x;y1=y;count++;flag = nextxy(&x1,&y1,count);while(0==flag && count < 7){count++;flag = nextxy(&x1,&y1,count);}} if(0 == flag){chess[x][y] =0;} return 0;
} int main()
{int i,j;clock_t start,finish;start = clock();for(i=0;i<X;i++){for(j=0;j<Y;j++){chess[i][j]=0;}}if(TravelChessBoard(2,0,1)){printf("抱歉,马踏棋盘失败!\n");}finish = clock();printf("\n本次计算一共耗时:%f秒\n\n",(double)(finish - start)/CLOCKS_PER_SEC);return 0;
}

http://www.yidumall.com/news/45535.html

相关文章:

  • 成都企业网站建设公司电话营销战略有哪些内容
  • 做网站推广的 什么是开户推广产品
  • perl php 网站开发广州seo排名优化公司
  • 怎么做同城购物网站直销怎么做才最快成功
  • 贵州网站开发网络营销是做什么的工作
  • 教学平台网站建设合同搜索引擎营销sem
  • 酒类做网站百姓网推广电话
  • 中山网站只设计福州百度网站排名优化
  • 校园网网站分页党群建设seo推广视频隐迅推专业
  • aspcms开源企业网站建设系统网站流量统计分析
  • 妈妈在家里做女视频网站安卓优化大师手机版
  • 免费软件下载网网站百度seo关键词优化
  • 17173网游排行榜如何做好seo优化
  • wordpress图片shuiyinseo诊断报告怎么写
  • 校园网站建设管理工作制度seo云优化是什么意思
  • 包牛牛网站怎么做博客网站
  • 传奇手游大型网站seo计费怎么刷关键词的
  • 盐城做网站百度网盘资源搜索入口
  • 眼镜 商城 网站建设全国互联网营销大赛官网
  • 哈什么网一个网站做ppt网站权重查询
  • 做网站都需要租服务器吗百度移动端点赞排名软件
  • 怎样利用云盘做电影网站公司网络组建方案
  • wordpress 网站卡企业网站源码
  • 怎么做自己的设计网站网络舆情监测
  • swf做网站头vue seo优化
  • 网站建设周期软文案例200字
  • 个人接单做网站挣钱不全网seo
  • 轻淘客轻网站怎么做seo超级外链
  • 网站建设学习网北京搜索引擎优化经理
  • 广东企业微信网站开发软文类型