排列序数
2016-05-12 20:57
323 查看
void f(int cur,int n,string x,string a,string str) { if(cur==n) { if(str==x) {cnt++;y=cnt;} else cnt++; return ; } for(int i=0;i<n;i++) { int ok=1; for(int j=0;j<cur;j++) if(str[j]==a[i]) ok=0; if(ok) { str+=a[i]; //cout<<str<<endl; f(cur+1,n,x,a,str); str=str.substr(0,str.length()-1); } } } int main() { string a; string str; string x; cin>>a; cin>>x; int m=(int)a.length(); //cout<<m<<endl; f(0,m,x,a,str); cout<<y-1<<endl; //a=a.substr(0,a.length()-2); //cout<<a<<endl; return 0; }
相关文章推荐
- 奇妙的假设-组合数
- CodeForces Round #305 (div1) B. Mike and Feet (单调栈)
- 八大排序之希尔排序
- Error Domain=NSOSStatusErrorDomain Code=1718449215 "The operation couldn’t be completed. (OSStatus error 1718449215.)"
- SVN
- 振兴中华
- java如何使用DOM文档
- PF不明内存泄露已解决,白头发也没了(转)
- PHP 面向对象
- 云计算从服务到公共资源的演化之路
- 逻辑推断
- 列出{1,2,,,,n}的所有子集
- 安卓基于监听事件处理(一)
- 打开网络适配的两种方法
- HDU 5167(map + 暴力)
- sprint
- Ubuntu下automake工具的使用
- CentOS硬软链接
- 模拟猜数(POJ2328)
- 生成1-n的排列