大数加法>>Bored Three-God

The bored Three-God get another boring question. 

This problem is ask you plus two big nubmer, please help him, when you solve this problem you can

speak to Three-God,"Oh, Please give me a diffculte one, this one is too easy".

Input

There are muti-case 
For each case, there are two integers, n, m (0 < n, m < 10^10000).

Output

Calculate two integers' sum

Sample Input

1 1
2 3
10000 100000

Sample Output

2
5
110000

题意 给两数 输出和 就是大数加法 

因为数据小就直接暴力了,输入貌似会有前导0,输出也要前导0;本来写了超时了 再看才发现scanf前没加‘~’,要仔细= =

#include <iostream>
#include<stdio.h>
#include<string.h>
#include<math.h>
using namespace std;
char a[10005];
char b[10005];
int c[10005];
int d[10005];
int e[10005];
int main()
{
    while(~scanf("%s %s",a,b))
    {
        memset(c,0,sizeof(c));
        memset(d,0,sizeof(d));
        memset(e,0,sizeof(e));
        int la=strlen(a);
        int lb=strlen(b);
        int lc=max(la,lb);
        for(int i=0;i<la;i++)
            c[i]=a[la-1-i]-'0';
        for(int i=0;i<lb;i++)
            d[i]=b[lb-1-i]-'0';
            int k=0;
        for(int i=0;i<lc;i++)
        {
            e[i]=c[i]+d[i]+k;
                k=e[i]/10;
                e[i]=e[i]%10;
        }
        if(k)
        {
            e[lc]=k;
            lc++;
        }
        for(int i=lc-1;i>=0;i--)
        {
            printf("%d",e[i]);
        }
        printf("\n");
    }
    return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_43372531/article/details/88900013