資源簡介
將馬隨機放在國際象棋的8*8棋盤Board[8][8]的某個方格中,馬按照走棋規則進行移動。要求每個方格只進入一次,走遍棋盤上全部64個方格。編制非遞歸程序,求出馬的行走路線,并按求出的行走路線,將數字1,2,3,…,64依次填入一個8*8的方陣,輸出之。測試數據可以自行指定一個馬的初始位置(i,j),0≤i,j≤7。
代碼片段和文件信息
#include
#include
using?namespace?std;
int?incre1[8]={?2?1-1-2-2-1?1?2};
int?incre2[8]={-1-2-2-1?1?2?2?1};??????????
int?board[8][8]={0};???
int?increi[8]increj[8]numstepoutwrite=1;????
???
int?countnum(int?iint?jint?a[8]int?b[8])??????
{
int?num=0;
????int?ki1j1;???
????for(k=0;k<8;k++)???
????{
i1=i+incre1[k];?
????????j1=j+incre2[k];?????????????????
????????if(i1>=0&&i1<=7&&j1>=0&&j1<=7&&board[i1][j1]==0)????
{???
????????????a[num]=incre1[k];???????????
????????????b[num]=incre2[k];???????
????????????++num;??????????????????
????????}???????
????????else??????????????????????
continue;??????????
????}???
????return?num;???
}??
int?movenext(int?*iint?*jint?a[]int?b[])????
{??
???int?nextnum=0a1[
- 上一篇:halcon+opencv相機標定
- 下一篇:復雜網絡社團發現代碼
評論
共有 條評論