这次没有用JAVA自带的BigInteger,思路就是将输入的String每一位数字转换成Int相加得到结果temp,temp除以10得到进位c,temp除余10后用StringBuilder.insert方法插入到字符序列中
import java.util.Scanner;
public class Solution {
public String solve (String s, String t) {
// write code here
String shorter,longer;
if(s.length()>t.length()){
shorter = t;
longer = s;
}else {
shorter = s;
longer = t;
}
int a,b,c=0,temp;
StringBuilder stb = new StringBuilder();
int i,j;
for(i=longer.length()-1,j=shorter.length()-1;j>=0;i--,j--){
a = longer.charAt(i)-'0';
b = shorter.charAt(j)-'0';
if(c>0){
temp = a+b+c;
}else {
temp = a+b;
}
c = temp/10;
temp%=10;
stb.insert(0,temp);
}
while(i>=0){
temp = longer.charAt(i)-'0';
if(c>0){
temp+=c;
}
c = temp/10;
temp%=10;
stb.insert(0,temp);
i--;
}
if(c>0){
stb.insert(0,c);
}
return stb.toString();
}
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
Solution sl = new Solution();
String value,s,t;
while(in.hasNext()){
s = in.next();
t = in.next();
value = sl.solve(s,t);
System.out.println(value);
}
}
}