#P1082. 高精度加法

高精度加法

题目描述

输入两个整数 aabb,输出这两个整数的和。aabb 都不超过 100100 位。

算法描述

由于 aabb 都比较大,所以不能直接使用语言中的标准数据类型来存储。对于这种问题,一般使用数组来处理。

定义一个数组 AAA[0]A[0] 用于存储 aa 的个位,A[1]A[1] 用于存储 aa 的十位,依此类推。同样可以用一个数组 BB 来存储 bb

计算 c=a+bc = a + b 的时候,首先将 A[0]A[0]B[0]B[0] 相加,如果有进位产生,则把进位(即和的十位数)存入 rr,把和的个位数存入 C[0]C[0],即 C[0]C[0] 等于 (A[0]+B[0])mod10(A[0] + B[0]) \bmod 10。然后计算 A[1]A[1]B[1]B[1] 相加,这时还应将低位进上来的值 rr 也加起来,即 C[1]C[1] 应该是 A[1]A[1]B[1]B[1]rr 三个数的和。如果又有进位产生,则仍可将新的进位存入到 rr 中,和的个位存到 C[1]C[1] 中。依此类推,即可求出 CC 的所有位。

最后将 CC 输出即可。

输入格式

输入包括两行,第一行为一个非负整数 aa,第二行为一个非负整数 bb。两个整数都不超过 100100 位,两数的最高位都不是 00

输出格式

输出一行,表示 a+ba + b 的值。

样例输入

20100122201001221234567890
2010012220100122

样例输出

20100122203011233454668012