const int MAXN=100
bool vis[MAXN],compress[10<<1];//compress,状态压缩
int wan[MAXN][MAXN];
void dfs(/*参数们*/)
{
if(/*递归出口条件*/)
{
//do sth
return;
}
for(int i=1;i<=N;++i) //递归入口
{
if(!vis[i]) //递归入口条件
{
if(!compress[])
{
vis[i]=1;//标记搜索过了。
compress[]=1;
dfs();
vis[i]=0; //回溯,变成原来的状态,否则其他搜索影响。
}
}
}
}
bool vis[MAXN],compress[10<<1];//compress,状态压缩
int wan[MAXN][MAXN];
void dfs(/*参数们*/)
{
if(/*递归出口条件*/)
{
//do sth
return;
}
for(int i=1;i<=N;++i) //递归入口
{
if(!vis[i]) //递归入口条件
{
if(!compress[])
{
vis[i]=1;//标记搜索过了。
compress[]=1;
dfs();
vis[i]=0; //回溯,变成原来的状态,否则其他搜索影响。
}
}
}
}