题目描述
给定正整数
N
N
N ,枚举所有
N
N
N 位由
1
1
1 到
N
N
N 组合的所有数。
输入格式
一个正整数
N
N
N
(
0
<
N
<
8
)
(0<N<8)
(0<N<8)
输出格式
符合题意的所有数,每行一个,按字典序排列。
样例输入
2
样例输出
11
12
21
22
#include <bits/stdc++.h>
using namespace std;
int n,sum=0;
int visit[101],a[101];
void dfs(int cur)
{
int i;
if(cur==n+1)
{
for(i=1;i<=n;i++)
{
cout<<visit[i];
}
cout<<endl;
return ;
}
for(i=1;i<=n;i++) //就是把这里改成1~n,其他和枚举子集一样
{
visit[cur]=i;
dfs(cur+1);
}
}
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>a[i];
}
dfs(1);
return 0;
}