hdu 1002 A+B problem
#include<stdio.h> #include<string.h> #include<stdlib.h> //#include<debug.h> int main( ) { //Debug(); char ch1[1010],ch2[1010]; int a[1010],b[1010],c[1010]; int N,k=0; scanf("%d",&N); while(N--) { scanf("%s%s",ch1,ch2); k++; int i,j,m=0,n=0,len1,len2,len,flag=0; memset(a,0,sizeof(a)); memset(b,0,sizeof(b)); memset(c,0,sizeof(c)); len1=strlen(ch1); len2=strlen(ch2); for(i=len1-1;i>=0;i--) a[m++]=ch1[i]-'0'; for(i=len2-1;i>=0;i--) b[n++]=ch2[i]-'0'; len=len1>len2?len1:len2; for(i=0;i<len;i++) { c[i]+=a[i]+b[i]; if(c[i]>9) { c[i+1]++; c[i]=c[i]-10; } } printf("Case %d:\n%s + %s = ",k,ch1,ch2); if(c[len]) flag=1; if(flag) { for(i=len;i>=0;i--) printf("%d",c[i]); } else { for(i=len-1;i>=0;i--) printf("%d",c[i]); } printf(N?"\n\n" :"\n"); } return 0; }
posted on 2011-04-15 01:50 more think, more gains 阅读(186) 评论(0) 编辑 收藏 举报