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

对字符串进行全排列,字符的大小规则: 'A'<'a'<'B'<'b'<...<'Z'<'z'.

 # include <iostream>
# include <cstring>
# include <algorithm>
using namespace std; bool cmp(const char &a, const char &b)
{
if (tolower(a) == tolower(b)) //把字符转换成小写字母,非字母字符不做出处理
{
return a < b;
}
else
return tolower(a) < tolower(b); } int main()
{
int num = ;
cin >> num;
while(num--)
{
char str[];
cin >> str;
int length = strlen(str);
sort(str, str+length, cmp);
cout << str << endl;
while(next_permutation(str, str + length, cmp)) //全排列
{
cout << str << endl;
}
}
return ;
}

poj 1256 按一定顺序输出全排列(next_permutation)的更多相关文章

  1. poj 1256 Anagram—next_permutation的神奇应用

    题意:给你一条字符串,让你输出字符串中字符的全排列,输出的顺序要按它给的奇葩的字典序. 题解:要输出全排列,暴力dfs可以过,但要注意题目的字典序以及相同字符的情况.如果用next_permutati ...

  2. PTA 输出全排列(20 分)

    7-2 输出全排列(20 分) 请编写程序输出前n个正整数的全排列(n<10),并通过9个测试用例(即n从1到9)观察n逐步增大时程序的运行时间. 输入格式: 输入给出正整数n(<10). ...

  3. 排列2(全排列next_permutation 注意格式)

    排列2 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submiss ...

  4. PTA数据结构 习题2.8 输出全排列 (20分)

    习题2.8 输出全排列 (20分) 请编写程序输出前n个正整数的全排列(n<10),并通过9个测试用例(即n从1到9)观察n逐步增大时程序的运行时间. 输入格式: 输入给出正整数n(<10 ...

  5. Java 用程序给出随便大小的10 个数,序号为1-10,按从小到大顺序输出,并输出相应的序号?

    import java.util.ArrayList; import java.util.Collections; import java.util.Iterator; import java.uti ...

  6. ytu 1064: 输入三个字符串,按由小到大的顺序输出(水题,字符串处理)

    1064: 输入三个字符串,按由小到大的顺序输出 Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 471  Solved: 188[Submit][Sta ...

  7. AJAX顺序输出

    转载:http://www.cnblogs.com/niunan/archive/2010/10/13/1849873.html AJAX顺序输出  在安装大多数CMS的时候都会在安装界面上看到这样的 ...

  8. java反射 顺序输出类中的方法

    java反射可以获取一个类中的所有方法,但是这些方法的输出顺序,并非代码的编写顺序. 我们可以通过自定义一个注解来实现顺序输出类中的方法. 首先,先写一个类,定义增删改查4个方法 public cla ...

  9. 输入3个数a,b,c,按大小顺序输出

    题目:输入3个数a,b,c,按大小顺序输出 package com.li.FiftyAlgorthm; import java.util.Scanner; /** * 题目:输入3个数a,b,c,按大 ...

随机推荐

  1. Java编程思想 学习笔记1

    一.对象导论 1.抽象过程 Alan Kay曾经总结了第一个成功的面向对象语言.同时也是Java所基于的语言之一的Smalltalk的五个基本特性,这些特性表现了纯粹的面向对象程序设计方式 1)万物皆 ...

  2. centos7 memcached+magent+keepalived集群

    111,222均部署keepalived,magent,memcached keepalived 111为主机,222为备机 其中,111上magent以本地memcache为主,222为备用 222 ...

  3. webstorm 很卡 scanning files to index (扫描文件索引)

    webstorm 号称"前端神器",但npm导入包跑索引,会很卡不停的跑索引... 排除你不想索引的文件夹 找到你想排除的文件夹(主要是node_modulewe文件夹),右键选择 ...

  4. 《深入理解java虚拟机》第二章 Java内存区域与内存溢出异常

    第二章 Java内存区域与内存溢出异常 2.2 运行时数据区域  

  5. Linux之Ubuntu无线网络配置

    无线网络使用问题: 0.插上有线网络电线与电脑NIC上. 1.set->系统设置->软件和更新->Ubuntu软件->下载自:   选择一个网络服务器地址(软件源)[http: ...

  6. Pytorch中的squeeze()和unsqueeze()函数

    在numpy库中,经常会出现“秩为1的一维数组”(come from 吴恩达的深度学习,目前还没有搞清楚numpy中如此设计的意图).比如: 注意这里的a的shape是[3] ,既不是 [1,3] 也 ...

  7. luogu P4160 [SCOI2009]生日快乐

    传送门 考虑因为每个人的蛋糕体积要相等,如果切了一刀,那么要使得分当前蛋糕的人根据分成的两部分蛋糕的体积分成两部分人,所以假设当前有n人,切的这一刀要是在x或y的\(\frac{k}{n}(k\in ...

  8. 未能加载文件或程序集System.Web.Http.WebHost

    解决方案:只需要在项目的bin文件夹下放入下面三个dll. 将:C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET MVC 4\Assemblies中的  ...

  9. 2、Saltstack的数据系统

      一.Grains grains是salt用来收集minion端底层系统信息的接口.比如,操作系统type.域名 .IP地址.内存及其他相关系统属性信息等.存储在minion端,用于保存minion ...

  10. A - A Secret (扩展kmp)

    题目链接:https://cn.vjudge.net/contest/283743#problem/A 题目大意:给你字符串s1和s2,然后问你s2的每一个后缀在s1中出现的次数之和(可重叠). 具体 ...