#P0004. 高精度加法

高精度加法

高精度加法

题目描述

计算两个十进制非负整数的精确和。输入的整数可能很长,不能假定它们能存入 C++ 的内置整数类型。

输入格式

第一行给出整数 aa,第二行给出整数 bb。 每个数仅由十进制数字组成;除数字零自身外,输入不含前导零。

输出格式

输出一行十进制整数,表示精确的求和结果。结果除零本身外,不应含前导零。

数据范围

  • 对于 20% 的测试点,0≤a,b≤1090 \le a,b \le 10^9。
  • 对于 40% 的测试点,0≤a,b≤10180 \le a,b \le 10^{18}。
  • 对于全部测试点,0≤a,b≤105000 \le a,b \le 10^{500}。

上界 1050010^{500} 由一个 1 和 500 个 0 组成,共 501 位;两数之和不超过 2×105002\times 10^{500}。

时间限制:1000 ms;内存限制:512 MiB。

样例一

1
1
2

样例二

1001
9099
10100

样例解释

第一组计算 1+1=21+1=2;第二组计算 1001+9099=101001001+9099=10100。

来源

任务与范围参考 洛谷 P1601 高精度加法。 题面重新表述,标准解、题解和测试数据在本仓库独立编写;不使用原平台隐藏数据。