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

高精度整数加法

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

import java.util.*;
public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        String str1 = scan.nextLine();
        String str2 = scan.nextLine();
        int ml = Math.max(str1.length(), str2.length());
        while (str1.length() != ml) {
            str1 = "0" + str1;
        }
        while (str2.length() != ml) {
            str2 = "0" + str2;
        }
        char[] chrs1 = str1.toCharArray();
        char[] chrs2 = str2.toCharArray();
        int carryBit = 0;
        StringBuffer ans = new StringBuffer("");
        for (int i = ml - 1; i > -1; i--) {
            char chr1 = chrs1[i];
            char chr2 = chrs2[i];
            int tmp = Integer.valueOf(chr1 + "") + Integer.valueOf(chr2 + "") + carryBit;
            ans.append(tmp % 10);
            carryBit = tmp / 10;
        }
        if (carryBit == 1) {
            ans.append(1);
        }
        ans.reverse();
        System.out.println(ans);
    }
}
全部评论
该牛油正在参与牛客写题解薅羊毛的活动,牛币,周边,京东卡超多奖品放送,活动进入倒计时!快来捡漏啦https://www.nowcoder.com/discuss/888949?source_id=profile_create_nctrack&channel=-1
点赞
送花
回复
分享
发布于 2022-04-27 11:44

相关推荐

TP-LINK 前端工程师 年包大概20出头 本科
点赞 评论 收藏
转发
1 2 评论
分享
牛客网
牛客企业服务