每个数字保留五个长宽!
by 小元勋 @ 2019-05-18 08:33:26
@[qbu666666](/space/show?uid=157598)
by 小元勋 @ 2019-05-18 08:33:33
@[qbu666666](/space/show?uid=157598) 初始化+回溯问题.
by aminoas @ 2019-05-18 08:51:47
帮你改好的代码:
```c
#include<cstdio>
using namespace std;
int n,ans[10],s;
void dfs(int num){
int i0;
if(num>n){
for(i0=1;i0<=n;i0++){
printf("%5d",ans[i0]);
}
printf("\n");
return;
}
for(i0=1;i0<=n;i0++){
if(s&(1<<i0)){
s^=1<<i0;//第i0位设为0
ans[num]=i0;
dfs(num+1);
ans[num]=0;
s|=1<<i0;//第i0位设为1
}
}
}
int main(){
scanf("%d",&n);
s=(1<<(n+1))-1;//初始化, 否则无法进入循环
dfs(1);
return 0;
}
```
by aminoas @ 2019-05-18 08:53:11
@[qbu666666](/space/show?uid=157598)
by aminoas @ 2019-05-18 08:54:52
@[QwQ自动机](/space/show?uid=143834) 谢谢大佬
by qbu666666 @ 2019-05-18 13:48:03