poj 1256 全排列
2012-10-20 20:04
309 查看
第二次做全排列的题了,又有了不小的收获,c++中有专门做全排列的函数
next_permutation();所以方便了不少;在STL库中;
#include<iostream>
#include<algorithm>
#include<string>
#include<cctype>
using namespace std;
bool cmp(char a,char b){
if(tolower(a) == tolower(b)) //tolwer()函数作用是将大写字母转变为小写字母
return a < b;
else
return tolower(a) < tolower(b);
}
int main()
{ int n;
string str;
cin>>n;
while(n--)
{
cin >> str;
sort(str.begin(), str.end(),cmp);
cout << str << endl;
while (next_permutation(str.begin(), str.end(),cmp))
{
cout << str << endl;
}
// str.clear();
}
}
next_permutation();所以方便了不少;在STL库中;
#include<iostream>
#include<algorithm>
#include<string>
#include<cctype>
using namespace std;
bool cmp(char a,char b){
if(tolower(a) == tolower(b)) //tolwer()函数作用是将大写字母转变为小写字母
return a < b;
else
return tolower(a) < tolower(b);
}
int main()
{ int n;
string str;
cin>>n;
while(n--)
{
cin >> str;
sort(str.begin(), str.end(),cmp);
cout << str << endl;
while (next_permutation(str.begin(), str.end(),cmp))
{
cout << str << endl;
}
// str.clear();
}
}
相关文章推荐
- poj-1256 Anagram 全排列
- POJ 1256 Anagram【生成有重集的全排列2.0】
- 不重复排列 POJ 1256 Anagram
- poj 1256 深搜全排列 Anagram
- poj 1256/1732/1833/1146 C++stl全排列
- poj 1256 按一定顺序输出全排列(next_permutation)
- poj 1256(Anagram + 求全排列算法)
- POJ 1256 全排列
- POJ 3187 Backward Digit Sums (DFS 全排列)
- POJ1850 Code 【排列组合】
- Poj 1833 排列 —— 一道水题的凌乱
- poj 1833 排列
- [ACM] poj 2249 Binomial Showdown (排列组合公式优化)
- POJ 2080 && ZOJ 1256 日期计算实例
- POJ 1833 生成排列
- poj 1833----排列
- POJ 1833 排列 简单
- (组合数学3.1.2.1)POJ 2249 Binomial Showdown(排列组合公式的实现)
- POJ 1256
- (DFS、全排列)POJ-3187 Backward Digit Sums