1032: A + B Problem II
2016-06-23 19:21
429 查看
1032: A + B Problem II 时间限制: 1 Sec 内存限制: 128 MB 提交: 99 解决: 18 [提交][状态][讨论版] 题目描述 I have a very simple problem for you. Given two integers A and B, your job is to calculate the Sum of A + B. 输入 The first line of the input contains an integer T(1<=T<=20) which means the number of test cases. Then T lines follow, each line consists of two positive integers, A and B. Notice that the integers are very large, that means you should not process them by using 32-bit integer. You may assume the length of each integer will not exceed 1000. 输出 For each test case, you should output two lines. The first line is "Case #:", # means the number of the test case. The second line is the an equation "A + B = Sum", Sum means the result of A + B. Note there are some spaces in the equation. Output a blank line between two adjacent test cases. 样例输入 4 1 2 112233445566778899 998877665544332211 998 2 4568 0012 样例输出 Case 1: 1 + 2 = 3 Case 2: 112233445566778899 + 998877665544332211 = 1111111111111111110 Case 3: 998 + 2 = 1000 Case 4: 4568 + 0012 = 4580 提示 来源 .//同杭电大数 唯一注意前置0问题 该模板的优势体现出来了
#include<stdio.h> #include<string.h> char A[1001]; char B[1001]; void cal(int lenA,int lenB); void add(char *a,int lena,char *b,int lenb); int main(void) { // freopen("D:\\test.txt","r",stdin); int T; while(scanf("%d",&T)!=EOF) { getchar(); for(int i=1;i<=T;i++) { if(i!=1) putchar('\n'); scanf("%s %s",A,B); printf("Case %d:\n",i); printf("%s + %s = ",A,B); cal(strlen(A),strlen(B)); } } return 0; } void cal(int lenA,int lenB) { if(lenA<lenB) add(B,lenB,A,lenA); else add(A,lenA,B,lenB); } void add(char *a,int lena,char *b,int lenb) { int T=lena-1; for(int i=lenb-1;i>=0;i--) a[T--]+=(b[i]-'0');//要记得是加上差值 int gap=0; for(int i=lena;i>=0;i--) { a[i]+=gap; if(a[i]>'9') { a[i]-=10; gap=1; } else gap=0; } if(gap) printf("1%s\n",a); else { int i;for(i=0;;i++) if(a[i]-'0') break; //去前置0 puts(a+i); } }
相关文章推荐
- 每个程序员都应该收藏的算法复杂度速查表
- 1400: 杨辉三角 //数组水题 2个数组轮次使用
- 解析数据传参数字典类型的(传服务器上是文本)
- Java I/O : 概述
- DFS_棋盘问题
- volley+okhttp
- (数据类型-Number的浮点型)JavaScript权威指南笔记4.1
- 经典计算机视觉论文笔记——《ImageNet Classification with Deep Convolutional Neural Networks》
- jQuery 中$.browser 替换
- 1439: 可排回文 水题 有小坑
- 开启AsyncTask从网络加载图片
- try-catch-finally对返回值的影响
- 北师大ACM新手指导第七题-枚举提高
- Swift编程思想 Part 1:拯救小马
- Unity3d制作一个简单的打开保存对话框-按钮2
- 4118 全排列
- GDB查看指定内存地址处的内容
- Centos下安装apahce的configure: error: APR not found. Please read the documentation解决办法
- Swift学习---基础一
- 国内登陆dropbox的好方法