hdu 1002 A + B Problem II(大正整数相加)
2015-08-14 21:40
465 查看
代码:
#include<cstdio> #include<cstring> #define Min(a,b) ((a)<(b)?(a):(b)) using namespace std; char s1[10000],s2[10000],s3[10000]; int main() { int t; scanf("%d",&t); int tt=0; while(t--) { ++tt; if(tt!=1) printf("\n"); scanf("%s%s",s1,s2); int len1,len2,len3; len1=strlen(s1); len2=strlen(s2); len3=Min(len1,len2); int k=0; int i=len1-1; int j=len2-1; int pos=0; while(len3--) { int temp=(s1[i--]-'0'+s2[j--]-'0'+k); s3[pos++]=(temp%10+'0'); k=temp/10; } if(i==-1&&j==-1) { if(k!=0) s3[pos++]=k+'0'; } else if(i==-1&&j!=-1) { while(j>=0) { int temp=s2[j--]-'0'+k; s3[pos++]=(temp%10+'0'); k=temp/10; } if(k!=0) s3[pos++]=k+'0'; } else { while(i>=0) { int temp=s1[i--]-'0'+k; s3[pos++]=(temp%10+'0'); k=temp/10; } if(k!=0) s3[pos++]=k+'0'; } printf("Case %d:\n",tt); printf("%s + %s = ",s1,s2); for(i=pos-1;i>=0;i--) { printf("%c",s3[i]); } printf("\n"); } return 0; }
相关文章推荐
- 112 Path Sum
- java通过JDBC链接SQLServer2012
- hadoop论坛实战项目
- 并发技巧
- 使用Nexus配置Maven私有仓库
- android Service显示Notification浅析
- HDU1003---Max Sum
- mysql事务隔离级别以及乐观锁悲观锁
- 2015-08-11 [豌豆荚]--研发--2面
- 数树数
- Eclipse中调试技巧
- list2
- Java学习之路0810(建立与数据库的连接)
- SpringMVC+Jquery -页面异步加载数据
- [Leetcode] Divide Two Integers
- poj 1651 Multiplication Puzzle(区间dp)
- Reverse Bits
- MindFusion--LineChart(折线图)
- 2015 HUAS Summer Contest#4~F
- 面向对象,集合篇(2)