高精度加法天才

Posted rhythm-

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了高精度加法天才相关的知识,希望对你有一定的参考价值。

问题 A: 【高精度】加法天才

时间限制: 1 Sec  内存限制: 64 MB
提交: 14  解决: 10
[提交] [状态] [讨论版] [命题人:]

题目描述

贝贝是一个聪明的小孩,他总喜欢玩数字加法的游戏。一天,他的数学老师为了考一考他的能力,出了一道这样的题:要求他在短时间内计算出两个大数相加的结果。这两个大数可不是普通的数字,它们是11位以上的“庞然大物”。
请你编程序,帮贝贝解决这个问题。


输入

两行,分别是两个需要相加的数A和B,这两个数在10^11~10^100之间。


输出

1行,是两个大数相加的结果。


样例输入

8569742356145896
215783669444444427


样例输出

224353411800590323
技术分享图片
#include <iostream>
#include <string>
using namespace std;
string add(string a,string b){
    if(a.size()<b.size()){
        string temp=a;
        a=b;
        b=temp;
    }
    int len1=a.size(),len2=b.size(),flag=0,pa,pb,sum;
    while(len1>0){
        pa=a[len1-1]-0;
        pb=len2>0?b[len2-1]-0:0;
        sum=pa+pb+flag;
        a[len1-1]=0+sum%10;
        flag=sum/10;
        len1--;len2--;
    }
    if(flag)a="1"+a;
    return a;
}
int main(){
    string a,b;
    cin>>a>>b;
    cout<<add(a,b)<<endl;
    return 0;
}
View Code

 


 









以上是关于高精度加法天才的主要内容,如果未能解决你的问题,请参考以下文章

高精度加法(含代码)

高精度加法简洁代码

高精度加法

高精度1--加法

高精度小数加法

算法AcWing 791. 高精度加法