题意:
给一个字符集和一些字符之间的小于关系,求字符集上的所有可能排列。
分析:
暴力枚举可以分为枚举子集,枚举排列,枚举组合,这题是个简单的枚举排列,枚举过程中用小于关系剪枝即可。
代码:
?
//poj 1270
//sep9
#include
#include
using namespace std; char vars[64],constraint[256],ans[64]; int g[128][128],vis[256]; int len; void dfs(int cur) { if(cur==len){ puts(ans); return ; } for(int i=0;i
='a'&&vars[i]<='z') vars[len++]=vars[i]; vars[len]='\0'; ans[len]='\0'; sort(vars,vars+len); dfs(0); puts(""); } return 0; }
?