骑士周游 回溯法
来源:互联网 发布:vb动态添加picturebox 编辑:程序博客网 时间:2024/05/03 00:52
#include <iostream>
#define N 5
using namespace std;
int chess[N][N];
int horizontal[8]={2,1,-1,-2,-2,-1,1,2},vertical[8]={1,2,2,1,-1,-2,-2,-1};
int count=0;
bool place(int s,int t)
{
if(s>=0&&s<N&&t>=0&&t<N&&chess[s][t]==0)
return true;
return false;
}
void backtrace(int s,int t,int sum)
{
if(sum>N*N)
{
::count ++;
for(int i=0;i<N;i++){
for(int j=0;j<N;j++)
cout <<' ' << chess[i][j];
putchar('/n');
}
system("pause");
return;
}
else {
for(int i=0;i<=7;i++)
if(place(s+vertical[i],t+horizontal[i])){
s += vertical[i];
t += horizontal[i];
chess[s][t] = sum ;
backtrace(s,t,sum+1);
chess[s][t] = 0;
s -= vertical[i];
t -= horizontal[i];
}
}
}
int main()
{
int i,sum=1,start_x,start_y,j;
for(i=0;i<N;i++)
for(j=0;j<N;j++)
chess[i][j] = 0;
cin >> start_x >> start_y;
chess[start_x][start_y] = 1;
backtrace(start_x,start_y,2);
cout << ::count << endl;
system("pause");
return 0;
}
- 骑士周游 回溯法
- 骑士周游问题(暴力解决:回溯法)
- 骑士周游
- 骑士周游问题
- 骑士周游 贪心
- 骑士周游 探索访问
- 骑士周游,Knight Tour
- 骑士周游问题解决方案
- poj2488 骑士周游(深搜)
- 回溯法 之 马周游(马跳日)问题
- 跳马问题(骑士周游问题)初探
- 跳马问题(骑士周游问题)初探
- 马踏棋盘算法(骑士周游问题)
- 马踏棋盘算法(骑士周游问题)
- 马踏棋盘算法(骑士周游问题)
- 马踏棋盘算法(骑士周游问题)
- C++ 马踏棋盘(骑士周游)
- 利用回溯算法求马周游问题
- Jexus让PHP与ASP.NET在Linux平台上和平相处
- 浅谈PHP开发中的MVC单点入口模式
- libevent学习总结
- 骑士周游 贪心
- Web2.0是什么
- 骑士周游 回溯法
- 模块划分
- 新来的
- lfs-ivecd移植到硬盘
- 木马 r.tlinee.com.cn 清除日志
- 第一次 来这注册 欢迎大家来踩踩我 大家一起分享资源
- 云GIS与工程师精神的衰落
- 1个关于迭代器的小问题找了1晚上
- 参数传递