您的位置:首页 > 其它

POJ - 1256 再次熟悉next_permutation

2012-01-10 12:24 393 查看
USACO持续进不去中..好久没去POJ了~~就去随便抓了一个水题...这道题主要是又回顾了下next_permutation..原来next_permutation里可以加自写的cmp~~~

Program:

#include<iostream>
#include<algorithm>
using namespace std;
int t,l;
char s[20];
bool cmp(char a,char b)
{ 
     if (a<'a' && b>='a')
     {
           a=a-'A'+'a';
           return a<=b;          
     }else
     if (b<'a' && a>='a')
     {
           b=b-'A'+'a';
           return a<b;              
     }    
     return a<b; 
}
int main()
{
     freopen("input.txt","r",stdin);
     freopen("output.txt","w",stdout);
     scanf("%d\n",&t);
     while (t--)
     {
          gets(s);
          l=strlen(s);
          sort(s,s+l,cmp); 
          do
          {
                puts(s);        
          }
          while (next_permutation(s,s+l,cmp));
     }
     return 0;   
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: