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

高精度整数加法

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

import java.util.*;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNextLine()) { // 注意 while 处理多个 case
            char[] s1 = in.nextLine().toCharArray();
            char[] s2 = in.nextLine().toCharArray();
            Stack<Integer> stack = new Stack<>();
            int carryBit = 0;
            int i = s1.length - 1, j = s2.length - 1;
            while (i >= 0 && j >= 0) {
                int d1 = s1[i] - '0';
                int d2 = s2[j] - '0';
                int sum = d1 + d2 + carryBit;
                stack.push((sum % 10));
                carryBit = sum / 10;
                i--;
                j--;
            }

            if ( i > j) {
                while (i >= 0) {
                    int sum = s1[i] - '0' + carryBit;
                    stack.push((sum % 10));
                    carryBit = sum / 10;
                    i--;
                }
            } else if (i < j) {
                while (j >= 0) {
                    int sum = s2[j] - '0' + carryBit;
                    stack.push((sum % 10));
                    carryBit = sum / 10;
                    j--;
                }
            }

            if(carryBit > 0){
                stack.push(carryBit);
            }
            while(!stack.isEmpty()){
                System.out.print(stack.pop());
            }
        }
    }
}

全部评论

相关推荐

2024-12-03 16:23
四川大学 Java
喜欢修勾的牛肉丸上岸了:川大就够了
点赞 评论 收藏
分享
野猪不是猪🐗:是我导致的,我前天对力扣进行了跨站脚本攻击,网站把我的请求给block了(胡言乱语)
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务