Description
Input
Output
Sample Input
3 aAb abc acba
Sample Output
Aab Aba aAb abA bAa baA abc acb bac bca cab cba aabc aacb abac abca acab acba baac baca bcaa caab caba cbaa
Hint
#include <cstdio>
#include <string>
#include <cstring>
#include <algorithm>
using namespace std;
int n;
char str[15];
bool cmp(char a,char b)
{
if(tolower(a)==tolower(b))
return a<b;
else
return tolower(a)<tolower(b);
}
int main()
{
scanf("%d",&T);
while( T-- )
{
scanf("%s",str);
sort(str,str+strlen(str),cmp);//自定义排序
do
{
cout << str << endl ;
}while(next_permutation(str,str+strlen(str),cmp));
}
return 0;
}
原文:http://www.cnblogs.com/Asimple/p/5516856.html