题解
2023-07-25 17:03:16
发布于:广东
300阅读
0回复
0点赞
#include <iostream>
using namespace std;
int a[100010], b[100010], c[100010];
int main() {
string s1, s2;
cin >> s1 >> s2;
int len1 = s1.size(), len2 = s2.size();//计算数字的长度
for (int i = 0; i < len1; i++) a[i] = s1[len1 - i - 1] - '0';//逆序存储a数组和b数组
for (int i = 0; i < len2; i++) b[i] = s2[len2 - i - 1] - '0';
int len = max(len1, len2); //加法加到最高位
for(int i = 0; i < len; i++){
c[i] += a[i] + b[i];
c[i + 1] += c[i] / 10;//如果当前的结果大于10下一位就进位
c[i] %= 10;
}
if(c[len]) len++;
for(int i = len - 1; i >= 0; i--) cout << c[i];
return 0;
}
全部评论 1
?你也发题解?
2024-05-04 来自 广东
0
有帮助,赞一个