POJ 1256
来源:互联网 发布:网络经营食品所需资质 编辑:程序博客网 时间:2024/05/31 18:42
//自定义cmp函数用于sort和next_permutation#include <stdio.h>#include <string>#include <cstring>#include <queue>#include <algorithm>#include <functional>#include <vector>#include <sstream>#include <iomanip>#include <math.h>#include <iostream>#include <sstream>#include <time.h>#include <stack>#include <set>#include <map>#include <time.h>#include <bitset>using namespace std;char str[20];bool cmp(char a,char b){ if(a <= 'Z' && a >= 'A' && b <= 'Z' && b >= 'A') return a < b; if(a <= 'z' && a >= 'a' && b <= 'z' && b >= 'a') return a < b; if(a <= 'Z' && a >= 'A' && b <= 'z' && b >= 'a') return a + 32 <= b; if(a<='z' && a >='a' && b <= 'Z' && b >= 'A') return a < (b + 32); return false;}int main(){ ios_base::sync_with_stdio(false); cin.tie(0); int T; cin>>T; while (T--) { cin>>str; int len=strlen(str); sort(str,str+len,cmp); do { cout<<str<<endl; } while(next_permutation(str,str+len,cmp)); } return 0;}//dfs搜索#include <stdio.h>#include <string>#include <cstring>#include <queue>#include <algorithm>#include <functional>#include <vector>#include <sstream>#include <iomanip>#include <math.h>#include <iostream>#include <sstream>#include <time.h>#include <stack>#include <set>#include <map>#include <time.h>#include <bitset>using namespace std;char str[20],cstr[20];int len;bool Visited[20];bool cmp(char a,char b){ if(a <= 'Z' && a >= 'A' && b <= 'Z' && b >= 'A') return a < b; if(a <= 'z' && a >= 'a' && b <= 'z' && b >= 'a') return a < b; if(a <= 'Z' && a >= 'A' && b <= 'z' && b >= 'a') return a + 32 <= b; if(a<='z' && a >='a' && b <= 'Z' && b >= 'A') return a < (b + 32); return false;}void dfs(int x){ if (x==len) { for (int i=0;i<len;i++) cout<<cstr[i]; cout<<endl; } else { for (int i=0;i<len;i++) { if (!Visited[i]) { cstr[x]=str[i]; Visited[i]=true; dfs(x+1); Visited[i]=false; while (i+1<len&&str[i]==str[i+1]) i++; } } }}int main(){ ios_base::sync_with_stdio(false); cin.tie(0); int T; cin>>T; while (T--) { memset(Visited,false,sizeof(Visited)); cin>>str; len=strlen(str); sort(str,str+len,cmp); dfs(0); } return 0;}
0 0
- poj 1256
- poj 1256
- poj 1256
- poj--1256
- poj--1256
- POJ 1256
- poj 1256
- POJ 1256 Anagram
- POJ 1256 Anagram
- poj 1256 Anagram
- POJ 1256 DFS
- poj 1256 Anagram
- POJ 1256解题报告
- POJ 1256 Anagram
- poj 1256 next_permutation
- poj 1256 Anagram
- POJ 1256 全排列
- poj 1256 Anagram
- linux poll机制
- 质因数分解
- JSONObject.fromObject--JSON与对象的转换
- TextView显示带图片的html内容
- MES系统系统车间布局功能说明
- POJ 1256
- GCC静态链接与动态链接
- solr安装部署
- linux---linux远程登录遇到的问题
- POJ 2007 计算几何 叉积
- linux中导入导出mysql数据
- Installation error: INSTALL_PARSE_FAILED_BAD_SHARED_USER_ID
- 【JAVA基础小问题】作用域public,private,protected,以及不写时的区别
- oracle 11g改变控制文件的位置