poj 1850组合数学
2014-05-05 14:46
375 查看
很简单的组合问题。
#include<stdio.h> #include<iostream> #include<algorithm> #include<string.h> using namespace std; char c[27]; long long zuhe(int n,int m) { if(n==0) return 0; if(m==0) return 1; if(m<0) return 0; long long i,j; long long s=1; for(i=n;i>n-m;i--) s*=i; for(i=1;i<=m;i++) { s/=i; } return s; } int main() { int i,j,n,m,p,t,k; long long s; while(cin>>c) { s=0; t=strlen(c); int ss=0; for(i=0;i<t-1;i++) { if(c[i]>=c[i+1]) { ss=1; break; } } if(ss) { printf("0\n"); continue; } for(i=1;i<t;i++) s+=zuhe(26,i); for(i=0;i<t;i++) { p=c[i]-'a'+1; if(i==0) { for(j=1;j<p;j++) s+=zuhe(26-j,t-i-1); } else { for(j=c[i-1]-'a'+2;j<p;j++) { s+=zuhe(26-j,t-i-1); } } } s++; cout<<s<<endl; } }
相关文章推荐
- POJ 1850/ 1496 组合数学
- poj 1850(组合数学)
- 【组合数学】POJ_1850_Code
- poj_1850 Code(组合数学/dfs)
- POJ 1850 Code(组合数学)
- poj 1850 Code (组合数学)
- POJ 1850 Code(组合数学)
- poj:1850 Code(组合数学?数位dp!)
- POJ 1850 Code<组合数学,杨辉三角计算每一个组合数>
- POJ-1850-Code-组合数学
- POJ 1850 Code (组合数学)
- poj 1850 Code 组合数学
- poj1850(组合数学)
- poj1496(组合数学)-与1850几乎一样
- POJ 1850:Code 组合数学
- POJ - 1850 Code(组合数学推公式)
- POJ 1850:Code 组合数学
- poj 1850 code(组合数学)
- POJ 1850Code(组合数学)
- POJ 1850 Code (组合数学)