您的位置:首页 > 其它

32. 整数加法

2016-03-01 12:48 211 查看
时间限制:
1 s

空间限制:
128000 KB

题目等级
: 白银 Silver

题解

查看运行结果


题目描述
Description

已知两个不超过200位的整数m,n,求m+n的值。


输入描述
Input
Description


输入m与n。(中间有空格)


输出描述
Output
Description


输出m+n的值。


样例输入
Sample
Input


样例输入1:

123456789123456789 987654321

样例输入2:

965758347 654235419


样例输出
Sample
Output


样例输出1:

123456790111111110

样例输出2:

1619993766


数据范围及提示
Data
Size & Hint


输入整数不超过200位。

代码:

#include

using namespace std;

#include

#include

string m,n;

int main()

{

int a[201],b[201],c[301]={0};

cin>>m;

cin>>n;

a[0]=m.length();

b[0]=n.length();

for(int i=1;i<=a[0];++i)

a[i]=m[a[0]-i]-'0';

for(int j=1;j<=b[0];++j)

b[j]=n[b[0]-j]-'0';

int i=1,x=0;

while(i<=a[0]||i<=b[0])

{

c[i]=a[i]+b[i]+x;

x=c[i]/10;

c[i]%=10;

++i;

}

if(x!=0)

c[i]=x;

else i--;

for(int j=i;j>=1;--j)

printf("%d",c[j]);

return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: