【高精度】加法天才
阿新 • • 發佈:2018-07-22
creat return name 能力 content 遊戲 aec jumbo 時間限制
提交: 14 解決: 10
[提交] [狀態] [討論版] [命題人:]
問題 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){ paView Code=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; }
【高精度】加法天才