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

高精度整数加法

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

#include <iostream>
#include <string>
#include <algorithm> // 包含 std::reverse

using namespace std;

string add_two_string(const string& a, const string& b) {
    string result; // 存储最终结果
    int carry = 0; // 进位标志

    // 逆转字符串方便计算
    string rev_a = a;
    string rev_b = b;
    reverse(rev_a.begin(), rev_a.end());
    reverse(rev_b.begin(), rev_b.end());

    int max_len = max(rev_a.size(), rev_b.size());

    for (int i = 0; i < max_len || carry; ++i) {
        int digit_a = (i < rev_a.size()) ? rev_a[i] - '0' : 0;
        int digit_b = (i < rev_b.size()) ? rev_b[i] - '0' : 0;

        int sum = digit_a + digit_b + carry;
        carry = sum / 10;
        result.push_back((sum % 10) + '0');
    }

    // 逆转结果字符串
    reverse(result.begin(), result.end());
    return result;
}

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

全部评论

相关推荐

10-26 13:03
已编辑
门头沟学院 物流经理
在okr拆解的小太阳...:实习待过,我待的部门氛围很好,基本不加班,双休有保证。
投递正浩创新EcoFlow等公司10个岗位
点赞 评论 收藏
分享
程序员花海:实习和校招简历正确格式应该是教育背景+实习+项目经历+个人评价 其中项目经历注意要体现业务 实习经历里面的业务更是要自圆其说 简历模板尽可能保持干净整洁 不要太花哨的
秋招吐槽大会
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务