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

高精度整数加法

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

#include <iostream>
using namespace std;

int main() {
    string s1,s2;
    getline(cin,s1);
    getline(cin,s2);
    int k1 = s1.size() - 1;
    int k2 = s2.size() - 1;
    int mark = 0;
    string result0;
    while (k1 > -1 || k2 >-1) {
        int a = 0, b =0;
        if(k1 > -1)a = s1[k1] - '0';
        if(k2 > -1)b = s2[k2] - '0';
        int sum = a + b + mark;
        if (sum >= 10) {
            mark = 1;
        }
        else {
            mark = 0;
        }
        sum = sum%10;
        result0 += sum + '0';
        k1--;
        k2--;
    }
   if(mark) result0 += '1';
   for (int i  = result0.size()-1 ; i >= 0; i--) {
    cout<<result0[i];
   }
   cout<<endl;
}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

07-20 11:20
新疆大学 Java
Alan_01:看到都是黑马点评跟苍穹外卖我就放心了
无实习如何秋招上岸
点赞 评论 收藏
分享
07-30 11:23
门头沟学院 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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