Generating Fast, Sorted Permutation-CSDN博客

31 阅读1分钟

#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;


void solve(char *p,int ln);


int main(){//(n-1)!种 
char a[11];
int n;
cin>>n;
while(n--){
cin>>a;
int ln=strlen(a);
sort(a,a+ln);
solve(a,ln);
}
return 0;



void solve(char *p,int ln){
if(ln==1) cout<<*p<<endl;
else {
for(int i=0;i<ln;i++){
cout<<p[i];
char copy_a[11];
strcpy(copy_a,p);
for(int j=i;j<ln-1;j++)
copy_a[j]=copy_a[j+1];
solve(copy_a,ln-1);
}
}\

}

//没调试好的