题解 | #高精度整数加法# 模拟

高精度整数加法

https://www.nowcoder.com/practice/49e772ab08994a96980f9618892e55b6

#include <iostream>
using namespace std;

int main() {
    string num1;
    string num2;
    cin >> num1 >> num2;
    int n1 = num1.size();
    int n2 = num2.size();
    int i = n1 - 1;
    int j = n2 - 1;
    int carry = 0;
    string sum;
    while (i >= 0 || j >= 0) {
        int add1 = i < 0 ? 0 : num1[i--] - '0';
        int add2 = j < 0 ? 0 : num2[j--] - '0';
        int temp = carry + add1 + add2;
        carry = temp / 10;
        temp %= 10;
        sum = to_string(temp) + sum;
    }
    if (carry) {
        sum = to_string(1) + sum;
    }
    cout << sum << endl;
}

全部评论

相关推荐

点赞 评论 收藏
分享
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务