高精度加法
题目
两个高精度数(n<255)相加,并输出结果。
Sample Input
123
321
Sample Output
444
题意解析
高精度加法是高精度中最基础的,唯一需要注意的就是进位
AC代码
#include<iostream>
#include<cstdio>
#include<string>
#include<cstring>
using namespace std;
const int maxn=1001;
int a[maxn],b[maxn],c[maxn];
char x[maxn],y[maxn];
void input()
{
cin>>x>>y;
for(int i=0;i<=strlen(x)-1;i++)a[maxn-strlen(x)+i]=int(x[i]-'0');
for(int i=0;i<=strlen(y)-1;i++)b[maxn-strlen(y)+i]=int(y[i]-'0');
}
void add()
{
int g=0;
for(int i=maxn-1;i>=0;i--)
{
c[i]=a[i]+b[i]+g;
g=c[i]/10;
c[i]=c[i]%10;
}
}
void output()
{
int i=0;
while(c[i]==0&&i<maxn)i++;
if(i==maxn)cout<<0;
for(;i<maxn;i++)cout<<c[i];
}
int main()
{
input();
add();
output();
return 0;
}