NBUT- 1228 J - Bored Three - God
题目链接:https://cn.vjudge.net/problem/NBUT-1228
题目
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
Hint
无
就是一个大数加法;
坑点就是要输出前导0;
比如005, 006要输出011。
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<algorithm>
using namespace std;
int a[100003],b[100003],c[100004];
char x[100005],y[100005];
int main()
{
while(~scanf("%s%s",x,y))
{
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
memset(c,0,sizeof(c));
int la=0;
int lb=0;
int lc=0;
int lx=strlen(x);
int ly=strlen(y); int w=0;int k=0;
for(int i=lx-1;i>=0;i--)
{
a[w++]=x[i]-'0';
}
for(int i=ly-1;i>=0;i--)
{
b[k++]=y[i]-'0';
}
int mm=max(w,k);
for(int i=0;i<mm;i++)
{
int s=a[i]+b[i];
c[i]+=s;
c[i+1]=c[i]/10;
c[i]%=10;
}
int flog=0;
if(c[mm])
{
printf("%d",c[mm]);
}
for(int j=mm-1;j>=0;j--)
{
printf("%d",c[j]);
}
printf("\n");
}
return 0;
}