首页 > 代码库 > 马的遍历x
马的遍历x
//AC自动机x
#include<iostream>
#include<cstdio>
#include<iostream>
#include<cstdlib>
#include<cstring>
#include<string>
#include<cmath>
using namespace std;
int a[10][10],t=0;
int h[4]= {1,2,2,1};//横坐标
int z[4]= {2,1,-1,-2};//纵坐标
int search(int);
int print(int);
int main() {
a[1][1]=0;
a[1][2]=0;
search(2);
return 0;
}
int search(int i)
{
for(int j=0;j<4;j++)
{
if(a[i-1][2]+h[j]>=0&&a[i-1][2]+h[j]<=8&&a[i-1][1]+z[j]>=0&&a[i-1][1]<=4)
{
a[i][1]=a[i-1][1]+z[j];
a[i][2]=a[i-1][2]+h[j];
if(a[i][1]==4&&a[i][2]==8) print(i);
else search(i+1);
}
}
}
int print(int ii) {
t++;
cout<<t<<": ";
for (int i=1; i<=ii-1; i++)
cout<<a[i][1]<<","<<a[i][2]<<"-->";
cout<<"4,8"<<endl;
}
马的遍历x
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。