资源简介
跳马问题:
设计一个国际象棋的跳马演示程序,
基本要求:将马随机放进8*8的棋盘内,按马的行走规则,每个方格进入一次.
走遍64个方格,将数字依次填入8*8个方格内,并输出.
较高要求:1.求出从某一起点出发的多条以致全部行走路线.
2.每次选择位置的 "最佳策略 ",尽量减少回溯次数
代码片段和文件信息
#include
using namespace std;
struct info
{
int xyout;
};
const int dx[8]={-2-2-1-1 1 1 2 2};
const int dy[8]={-1 1-2 2-2 2-1 1};
int board[8][8];
int outlet(int xint y)
{
int ct=0;
for(int i=0;i<8;++i)
{
if(x+dx[i]<0 || y+dy[i]<0 || x+dx[i]>=8
|| y+dy[i]>=8 || board[x+dx[i]][y+dy[i]])
continue;
else ++ct;
}
return ct;
}//计算(xy)的出口数
void sort(info *pint n)
{
for(int i=n-1;i>0;--i)
if(p[i].out swap(p[i]p[i-1]);
else break;
}//按出口数由小到大排序
bool search(int xint yint step)
{
if(board[x][y])
return false;
if(step==8*8)
{
board[x][y]=step;
return true;
}
else
{
board[x][y]=step;
int ij;
info dir[8];
for(i=j=0;i<8;++i)
if(x+dx[i]<0 || y+dy[i]<0 || x+dx[
相关资源
- VC++图片控件(Picture Control)显示资源
- vc++车牌识别源程序
- VC++截屏,并截屏图像旋转(简单)
- vc++的餐厅前后台点餐软件
- VC++基于SOCKET的简易网络聊天室
- c++ list control导入导出Excel数据
- VC++超市进销存管理系统 用的是Acces
- VC++演示GETPOST发送请求的HTTP客户端
- Vc++服务器接受数据,发送数据
- VC++学习范例(VC++范例大全)
- VC++电力规约调试工具源码IEC104\\IEC1
- VC++开发的GIS系统源码无错完整版
- 三维几何零件图形程序-OpenGL-VC++源代
- (halcon+mfc)模板匹配demo源码
- vc++ 非常好看的桌面下雪效果
- MFC GDIPlus封装的CGdipButton界面,支持很
- Visual.C++高级界面特效制作百例源码
- VC++树形控件与数据库连接的典型
- VC++ 实现包含“画图”菜单,该菜单中
- vc++动态创建控件及添加事件响应
- VC++_2010入门经典
- vc++时尚编程100例vc++6.0时尚编程百例配
- VC++自动配置ODBC数据源
- 《DEVC++基础教程》
- vc++游戏 扫雷/连连看/推箱子/拼图/俄
- VC++小游戏开发教程
- MFC棋牌类游戏编程VC++
- 《VC++角色扮演游戏程序设计》pdf以及
- VC++调用C# wcf
- 课程设计:VC++超市管理系统(MFC源码
评论
共有 条评论