poj 1256 Anagram
http://poj.org/problem?id=1256
题意是说求出一个字符串的全排列,按字典序
需要注意的是字典序和传统意义上的字典序不同
重新定义了,A
需要自己重写cmp函数。
next_permutation好神....直接求出全排列.....
1
2
3 /* ***********************************************
4 Author :111qqz
5 Created Time :2016年02月19日 星期五 15时43分31秒
6 File Name :code/poj/1256.cpp
7 ************************************************ */
8
9 #include <algorithm>
10 #include <cstdio>
11 #include <iostream>
12 #include <cstring>
13 #include <string>
14 #include <cmath>
15 #include <map>
16
17 using namespace std;
18 bool cmp(char a,char b)
19 {
20 char x = tolower(a);
21 char y = tolower(b);
22 if (x==y)
23 {
24 return a<b;
25 }
26 else return x<y;
27 }
28 int n;
29 string st;
30
31 int main()
32 {
33 cin>>n;
34 while (n--)
35 {
36
37 cin>>st;
38 sort(st.begin(),st.end(),cmp);
39 do
40 {
41 cout<<st<<endl;
42 }while (next_permutation(st.begin(),st.end(),cmp));
43 }
44
45
46 return 0;
47 }
48
49