NYOJ-光棍的yy-655
http://acm.nyist.net/JudgeOnline/problem.php?pid=655 光棍的yy 现在给你m个1,你可以把2个1组合成一个2,这样就不是光棍了,问这样的组合有多少种?? 例如(111? 可以拆分为 111 12 21? 有三种) 输入 *///大数问题 #include<stdio.h>//计算菲波那切数列:1,2,3,5,8,13,21,34、、、、、 ? //?其他AC代码 #include<stdio.h> #include<string.h> int main() { int fab[201][50]; memset(fab,sizeof(fab)); int i,k=0; fab[1][0]=1; fab[2][0]=2; fab[3][0]=3; for(i=4; i<=200; i++) { for(j=0; j<=k; j++) { fab[i][j]+=(fab[i-1][j] + fab[i-2][j]); if(fab[i][j]>10000) { fab[i][j+1]=fab[i][j]/10000; if(k<j+1) k=j+1; fab[i][j]-=10000; } } } char str[220]; int n,l; scanf("%d",&n); while(n--) { scanf("%s",str); l=strlen(str); for(i=48; i>=0; i--) if(fab[l][i]!=0 && fab[l][i+1]==0) { printf("%d",fab[l][i]); for(j=i-1; j>=0; j--) printf("%4.4d",fab[l][j]); break; } printf("n"); } return 0; } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |