next_permutation,POJ(1256)

Posted 树的种子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了next_permutation,POJ(1256)相关的知识,希望对你有一定的参考价值。

题目链接:http://poj.org/problem?id=1256

解题报告:

1、sort函数是按照ASC11码排序,而这里是按照 ‘A‘<‘a‘<‘B‘<‘b‘<...<‘Z‘<‘z‘排序。

#include <iostream>
#include <algorithm>
#include <string>

using namespace std;


bool cmp(char a,char b)
{
    char m=tolower(a);
    char n=tolower(b);
    if(m==n)
        return a<b;
    else return m<n;
}


int main()
{
    int t;
    cin>>t;
    while(t--)
    {
        string s;
        cin>>s;
        sort(s.begin(),s.end(),cmp);
        do
        {
            cout<<s<<endl;
        }while(next_permutation(s.begin(),s.end(),cmp));
    }
    return 0;
}

 

以上是关于next_permutation,POJ(1256)的主要内容,如果未能解决你的问题,请参考以下文章

poj1256(贪心+并查集)

POJ1833 &amp; POJ3187 &amp; POJ3785 next_permutation应用

POJ 2718 Smallest Difference(贪心 or next_permutation暴力枚举)

POJ 1833 排列STL/next_permutation

POJ 入门

POJ 1731 Orders(STL运用)