import java.util.*;
import java.math.BigInteger;
public class Solution {
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
* 计算两个数之和
* @param s string字符串 表示第一个整数
* @param t string字符串 表示第二个整数
* @return string字符串
*/
public String solve (String s, String t) {
// write code here
String shortS = s;
String longS = t;
if(s.length()>= t.length()){
shortS = t;
longS = s;
}
boolean needAddOne = false;
StringBuilder sb = new StringBuilder();
//按长的来是为了处理进位
for(int i = 0; i < longS.length();i++){
int n = 0;
if(i < shortS.length()){
n = shortS.charAt(shortS.length() - 1 - i) - '0';
}
int n2 = longS.charAt(longS.length() - 1 - i) - '0';
int sum = n + n2;
if(needAddOne){
sum += 1;
}
if(sum >= 10){
//下次需要加1
needAddOne = true;
int ge = sum % 10;
sb.insert(0, ge + "");
} else {
needAddOne = false;
sb.insert(0, sum + "");
}
}
//最后处理有进位的情况 如 9999 + 1 这种情况 变成 10000
if(needAddOne){
sb.insert(0,"1");
}
return sb.toString();
}
}