#P08000. 高精度整数加法

高精度整数加法

题目描述

如果整数太大,在 C++\verb|C++| 语言里无法使用整型数据类型存储,这个时候可以使用字符串 string\verb|string| 来存储整数,并模拟整数的四则运算,这就是 C++\verb|C++| 语言里高精度整数的策略。

设计一个函数 string foo(string a,string b)\verb|string foo(string a,string b)|,实现计算并返回用字符串存储的两个高精度非负整数做加法的结果。

输入格式

22 行,分别是两个非负整数 a,ba,b

输出格式

11 行,函数的计算结果,也就是两个非负整数做加法的结果。

输入输出样例

123456789123456789123456789123456789123456789123456789
987654321987654321987654321987654321
123456789123456790111111111111111111111111111111111110

说明/提示

👀️ 本题需要你设计一个 C++\verb|C++| 函数来解决问题,提交代码模板如下:

//函数参数a,b与题目描述一致,返回值是题目要求的输出结果(函数头必须和模板一致)
//注意:不能在函数体中输出结果,而是在函数体中生成结果并返回
string foo(string a,string b) {
    //在函数中实现题目要求的效果
}

定义了这个函数,在主函数中调用它就能解决问题,参考代码如下:

#include<iostream>
#include<algorithm>
using namespace std;

//----------------------------------------------------------------------------
//!!!本题要提交的代码从这里开始!!!

//函数参数a,b与题目描述一致,返回值是题目要求的输出结果(函数头必须和模板一致)
//注意:不能在函数体中输出结果,而是在函数体中生成结果并返回
string foo(string a,string b) {
    //在函数中实现题目要求的效果
}

//!!!本题要提交的代码到这里结束!!!
//----------------------------------------------------------------------------

int main(){
    string a,b;
    cin>>a>>b;
    cout<<foo(a,b)<<endl;
    return 0;
}

需要特别注意的是,本题提交的代码是定义函数的部分,不能提交完整的程序哦!


👀️ 对于100%100\% 的数据,非负整数 a,ba,b 的位数不超过 10610^6