大数加法
2017-01-18 11:23
239 查看
1023: 算法提高 大数加法
时间限制: 1 Sec 内存限制: 256 MB提交: 5 解决: 2
[提交][状态][讨论版]
题目描述
输入两个正整数a,b,输出a+b的值。输入
两行,第一行a,第二行b。a和b的长度均小于1000位。输出
一行,a+b的值。样例输入
4
2
样例输出
6
提示
来源
不含0+ 0=0的情况,不需要另外考虑[提交][状态]
#include<iostream> #include<string.h> #include<stdio.h> using namespace std; void Add(char s1[],char s2[])//大数加法 { int num1[1005]={0},num2[1005]={0},sum[1008]={0};//三个数组注意要初始化为0 int i,j=0,k=0,len1,len2; len1=strlen(s1); len2=strlen(s2); for(i=len1-1;i>=0;i--) num1[j++]=s1[i]-'0'; for(i=len2-1;i>=0;i--) num2[k++]=s2[i]-'0'; // cout<<1<<endl; for(i=0;i<=1005;i++) { sum[i]=num1[i]+num2[i]+sum[i]; if(sum[i]>=10) { sum[i+1]++; sum[i]=sum[i]%10; } // cout<<sum[i]; } for(i=1004;;i--) { if(sum[i]!=0) { k=i; break; } } for(i=k;i>=0;i--) cout<<sum[i]; cout<<endl; } int main() { char a[1005],b[1005]; scanf("%s %s",a,b); Add(a,b); return 0; }
相关文章推荐
- 大数加法
- Uva 12333 Revenge of Fibonacci (字典树 + 大数加法运算)
- 大数加法
- HDU 1250 Hat's Fibonacci 大数加法 进位10000000
- C语言大数加法
- 大数加法
- 剑指offer编程题Java实现——面试题12相关题大数的加法、减法、乘法问题的实现
- Java字符串的大数加法和乘法实现
- 51Nod 1005 大数加法
- 浮点数的大数加法模板
- 大数加法的处理技巧
- 大数加法 自定义函数
- 51nod1005---大数加法(51nod基础:加减模拟)
- A + B Problem II(hdu1002,大数加法)
- uva 10069 DP + 大数加法
- C语言大数加法
- PKU 3982(大数加法)
- 南邮 OJ 1011 大数加法
- A + B Problem II HDU - 1002(大数加法)
- 大数加法程序,仅供参考(陈渊)