Problem1599--【高精度】高精度加法(例题)

1599: 【高精度】高精度加法(例题)

Time Limit: 1.000 Sec  Memory Limit: 128 MB
Submit: 472  Solved: 229
[Submit] [Status] [Web Board] [Creator:]

Description

    【例1】高精度加法。输入两个正整数,求它们的和。

Input

    两行,每行为一个高精度整数(非负数,长度不超过255)

Output

    一行,相加的结果。

Sample Input

2222555555555555
8888999999999999

Sample Output

11111555555555554

HINT

#include<bits/stdc++.h>
usingnamespacestd;
intx,y,m,a1[256],a2[256],n[256];
intmain() {
    string s1,s2;
    cin>>s1>>s2;
    x=s1.size();
    y=s2.size();
    for(inti=1; i<=x; i++) {
        a1[i]=s1[x-i]-'0';
    }
    for(inti=1; i<=y; i++) {
        a2[i]=s2[y-i]-'0';
    }
    for(inti=1; i<=max(x,y); i++) {
        n[i]=a1[i]+a2[i]+m;
        m=n[i]/10;
        if(i!=max(x,y)) {
            n[i]%=10;
        }
    }
    for(inti=max(x,y); i>=1; i--) {
        cout<<n[i];  
    }
}

Source/Category


[Submit] [Status]