题解 | #大数加法#
大数加法
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(); } }