题解 | #大数加法#

大数加法

https://www.nowcoder.com/practice/11ae12e8c6fe48f883cad618c2e81475

import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 计算两个数之和
     * @param s string字符串 表示第一个整数
     * @param t string字符串 表示第二个整数
     * @return string字符串
     */
    public String solve (String s, String t) {
        // write code here
        boolean flag = false;
        String sh = s.length() <= t.length() ? s : t;
        String l = s.length() > t.length() ? s : t;

        StringBuilder res = new StringBuilder();

        for (int i = sh.length() - 1, j = l.length() - 1; i >= 0; i--, j--) {
            System.out.println("1" + "--------" + j);
            int temp = Integer.valueOf(l.charAt(j) + "") + Integer.valueOf(sh.charAt(i) + "");
            System.out.println(temp);
            if (flag) {
                temp += 1;
                flag = false;
            }
            if (temp >= 10) {
                temp %= 10;
                flag = true;
            }

            res = res.insert(0, temp);
        }
        for(int j = l.length() - sh.length() - 1; j >=0; j--){
            System.out.println("2" + "--------" + j);
            int temp = Integer.valueOf(l.charAt(j) + "");
            if (flag) {
                temp += 1;
                flag = false;
            }
            if (temp >= 10) {
                temp %= 10;
                flag = true;
            }

            res = res.insert(0, temp);
        }
        if(flag){
            res.insert(0, 1);
        }
    

        return res.toString();
    }
}

全部评论
it's hard,because 没有测试用例的测试,我很难确定每一步的逻辑是否存在漏洞
点赞 回复 分享
发布于 2024-06-04 11:43 上海

相关推荐

牛客37185681...:马德,我感觉这是我面过最恶心的公司,一面是两个女hr,说什么实习前几个月属于试用期,试用期过了才能转成正式实习生,我***笑了,问待遇就是不说,问能不能接受全栈,沙币公司
如果可以选,你最想去哪家...
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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