(组合数学3.1.1.1)POJ 1146 ID Codes(字典序法)
2013-10-08 21:50
411 查看
/* * POJ_1146.cpp * * Created on: 2013年10月8日 * Author: Administrator */ #include <iostream> #include <cstdio> #include <algorithm> #include <cstring> using namespace std; char s[60]; int l; bool get(){ int i = l - 1; int j; while(i > 0 && s[i-1] >= s[i]){ i--; } if(!i){ return false; } int mp = i; for(j = i + 1 ; j < l ; ++j){ if(s[i-1] >= s[j]){ continue; } if(s[j] < s[mp]){ mp = j; } } swap(s[mp],s[i-1]); sort(s+i,s+l); return 1; } int main(){ while(scanf("%s",&s)!=EOF,s[0] !='#'){ l = strlen(s); if(get()){ printf("%s\n",s); }else{ printf("No Successor\n"); } } }
相关文章推荐
- (组合数学3.1.1.1)POJ 1146 ID Codes(字典序法)
- poj 1146 ID Codes (字符串处理 生成排列组合 生成当前串的下一个字典序排列 【*模板】 )
- POJ 1146 ID Codes 笔记
- POJ 1146 ID Codes (STL)
- poj 1146 ID Codes
- POJ 1146 ID Codes(枚举排序)
- poj 1146 ID Codes
- POJ 1146 ID Codes——STL next_permutation
- poj 1146 ID Codes
- POJ 1146:ID Codes
- UVa 146 & POJ 1146 - ID Codes
- poj 1146 ID Codes(next_permutation)
- POJ 1146 ID Codes
- POJ 1146 ID Codes (生成排列)
- [ACM] poj 1146 ID Codes(字符串的下一个排列)
- POJ 1146 ID Codes
- POJ 1146 ID Codes (UVA146)
- [ACM] poj 1146 ID Codes(字符串的下一个排列)
- POJ 1146 ID Codes 求下一个字典序
- poj 1146 ID Codes