求两个不超过 200 位的非负整数的和。
输入格式
有两行,每行是一个不超过 200 位的非负整数,可能有多余的前导 0。
输出格式
一行,即相加后的结果。结果里不能有多余的前导 0,即如果结果是 342,那么就不能输出为 0342。
输出时每行末尾的多余空格,不影响答案正确性
样例输入
22222222222222222222
33333333333333333333
样例输出
55555555555555555555
一开始想的就是拆分一位一位相加然后进位存放在一个数组里,最后倒序输出。但是因为前导0处理不好,就出错了。后来想起老师讲过,可以令一个进位值来控制循环,以及控制最高位的有无。坑点在于不能输出前几个0,设置一个标记变量flag解决了。
#include <iostream>
#include <cstring>
using namespace std;
int main(){
string s1,s2;
cin>>s1>>s2;
int i,d=0;//进位
int s3[