大数加法 HDU 1002

Posted xiao-xue-di

tags:

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

#include <iostream>
#include <cstring>
#include <string>
#include <cstdio>
#include <algorithm>

using namespace std;

string bigmun(string a,string b){
    string c;
    reverse(a.begin(),a.end());
    reverse(b.begin(),b.end());
    char ans[2000];
    int l=0,plus=0,i;
    char x[2000];
    for(i=0;i<max(a.size(),b.size())-min(a.size(),b.size());i++){
        x[i]=‘0‘;
    }
    x[i]=‘‘;
    string xx=x;
    if(a.size()<b.size()){
        a=a+xx;
    }
    else{
        b=b+xx;
    }
    for(i=0;i<min(a.size(),b.size());i++){
        int x=a[i]-‘0‘;
        int y=b[i]-‘0‘;
        int z=x+y;
        z+=plus;
        plus=0;
        ans[l++]=z%10+‘0‘;
        plus+=z/10;
    }
    if(plus!=0){
        ans[l++]=plus+‘0‘;
    }
    ans[l]=‘‘;
    c=ans;
    reverse(c.begin(), c.end());
    return c;
}


int main(){
    int n;
    scanf("%d",&n);
    int Case;
    Case=1;
    while (n--) {
        string a,b,c;
        cin>>a>>b;
        c=bigmun(a,b);
        printf("Case %d:
",Case++);
        if(n!=0){
            cout<<a<<" "<<"+"<<" "<<b<<" "<<"="<<" "<<c<<endl;
            cout<<endl;
        }
        else{
            cout<<a<<" "<<"+"<<" "<<b<<" "<<"="<<" "<<c<<endl;
        }
    }
    return 0;
}

 

以上是关于大数加法 HDU 1002的主要内容,如果未能解决你的问题,请参考以下文章

题解报告:hdu 1002 A + B Problem II(大数加法)

大数加法 (A + B Problem II)

大整数加法 HDU1002

HDU - 1002 A + B Problem II (大整数加法)

大数运算

大数加法大数乘法