2 2 3
12 21 123 132 213 231 312 321
#include<iostream>
#include<algorithm>
#include<string.h>
using namespace std;
int a[15];
int main()
{
int cases,x,i;
cin>>cases;
++cases;
while(--cases)
{
cin>>x;
for(i=0; i< x;++i)
a[i]=i+1;
for(i=0; i<x;++i)
cout<<a[i];
cout<<endl;
while(next_permutation(a,a+x)==1)//next_permutation函数
/*这是一个求一个排序的下一个排列的函数,可以遍历全排列,要包含头文件<algorithm>
与之完全相反的函数还有prev_permutation
*/
{
for(i=0; i < x; i++)
cout<<a[i];
cout<<endl;
}
memset(a,0,x);
}
return 0;
}
原文:http://www.cnblogs.com/cwenliu/p/5927839.html