Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
为什么WA啊??谁能给点数据啊??#include<stdio.h> #include<string.h> __int64 C(int n,int m) { __int64 sum=1; if(n==0||m==0) return 1; if(m>n/2) m=n-m; for(int i=1;i<=m;i++) { sum*=(n-i+1); if(sum%i==0) sum/=i; } return sum; } char str[27]; int main() { scanf("%s",str); __int64 sum=0; int l=strlen(str); int i,j; for(i=0;i<l-1;i++) if(str[i]>=str[i+1]) break; if(i<l-1) printf("0\n"); else { for(i=1;i<=l-1;i++) sum+=C(26,i); for(i=l-1;i>0;i--) { int n=str[i]-str[i-1]-1; for(j=str[i-1]+1;j<str[i];j++) sum+=C(26-(j-str[i-1]),l-i-1); } for(i=1;i<=str[0]-'a';i++) sum+=C(26-i,l-1); printf("%I64d\n",sum+1); } return 0; } Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator