#include <iostream>
#include <cstdio>
#include <cstring>
#include <string>
using namespace std;
int mmap[6][6];
void makemmap()
{
memset(mmap, 0, sizeof(mmap));
for(int i = 1; i <= 5; i++)
{
for(int j = 1; j <= 5; j++)
{
if(i != j)
mmap[i][j] = 1;
}
}
mmap[4][2] = mmap[2][4] = 0;
mmap[4][1] = mmap[1][4] = 0;
}
void DFS(int x, int k, string s)
{
s += char(x + '0');
if(k == 8)
{
cout<<s<<endl;
return;
}
for(int i = 1; i <= 5; i++)
{
if(mmap[x][i])
{
mmap[x][i] = mmap[i][x] = 0;
DFS(i, k+ 1, s);
mmap[x][i] = mmap[i][x] = 1;
}
}
}
int main()
{
makemmap();
DFS(1, 0, "");
return 0;
}
uva 291 简单搜索(一笔画)
最新推荐文章于 2019-05-05 19:37:42 发布