2 2 3
12 21 123 132 213 231 312 321
是水题。。next_permutation函数来写。也可以用dfs算法来写。下面是用的next_permutation函数来写。
#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
int N,x,i,a[10];
cin>>N;
while(N--)
{
cin>>x;
for(i=0;i<x;i++)//x==3
a[i]=i+1;//a[0]=1,a[1]=2,a[2]=3
do
{
for(i=0;i<x;i++)
cout<<a[i];
cout<<endl;
}while(next_permutation(a,a+x));
}
return 0;
}
原文:http://blog.csdn.net/zuguodexiaoguoabc/article/details/44062781