我们都知道,每一种数据类型的出从空间都有限,比如整数类型,一般用的是int(-2147483648~2147483647),如果数据太长了就用long long,数据如果再长一点就要用到unsigned long long,有些要用到一些编译器提供的_int128。那么万一万一,数据更长怎么办?这就需要我们的算法来模拟高精度的运算。 (以下是个人的解法,不一定最优,仅供参考)
高精度加法
题目
高精度加法,相当于 a+b problem,不用考虑负数。
输入格式
分两行输入。$ a,b\leq 10^{500} $
输出格式
输出只有一行,代表 a+b 的值。
思路
这题如果是单纯输入两个数a和b,然后相加的话,就太简单了,不需要动用算法;因此题目也说了,是高精度算法,数字将会是很大的,大于unsigned long long ,因此我们应该考虑其他方式。那么我们可以考虑一种特殊的加法算数方式——竖式加法。 先看一下思路: