hdoj 1715 大菲波数 【字符串相加】
发布时间:2020-12-14 03:27:45 所属栏目:大数据 来源:网络整理
导读:策略 :如题; 为什么昨天比赛的时候就没想出来, 模糊点 : char c = a; c += 1; //此时c = ‘b’; 注意:我是把最低位放到数组的较靠后的位置 AC by: SWS ? 链接http://acm.hdu.edu.cn/showproblem.php?pid=1715 代码: #includestdio.h#includestring.h
策略 :如题; 为什么昨天比赛的时候就没想出来, 模糊点 : char c = a; c += 1; //此时c = ‘b’; 注意:我是把最低位放到数组的较靠后的位置 AC by: SWS ? 链接http://acm.hdu.edu.cn/showproblem.php?pid=1715 代码: #include<stdio.h> #include<string.h> char a[300],b[300],c[300]; void f(int n){ strcpy(a,"1"); strcpy(b,"1"); int la,lb,i,j,k,s; for(s = 3; s <= n; s ++){ la = strlen(a); lb = strlen(b); i = j = k = 0; while(i<la&&j<lb){ c[k++] = a[i]+b[j]-'0'; i++; j++; } while(i<la){ c[k++] = a[i]; i++; } while(j<lb){ c[k++] = b[j]; j++; } i = 0; while(i<k){ if(c[i]>'9'){ if(c[i+1] < '0') c[i+1]= c[i+1]+1+'0'; else c[i+1] += 1; c[i] -= 10; } i++; } if(c[k]) c[k+1] = ' '; else c[k] = ' '; strcpy(a,b); strcpy(b,c); memset(c,sizeof(c)); } lb = strlen(b); for(i = lb-1; i >= 0; i --) printf("%c",b[i]); printf("n"); } int main() { int t,n; scanf("%d",&t); while(t --){ scanf("%d",&n); f(n); } return 0; } AC time :2014 / 07 /31 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |