首页 > 其他 > 详细

【高精度】加法天才

时间:2018-07-22 16:26:09      阅读:208      评论:0      收藏:0      [点我收藏+]

问题 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

 


 

【高精度】加法天才

原文:https://www.cnblogs.com/Rhythm-/p/9350256.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!