Given two numbers represented as strings, return sum of the numbers as a string.
string addStr(const string& num1, const string& num2){
int i = num1.size()-1;
int j = num2.size()-1;
string ans = "";
int ad = 0;
while (i >= 0 && j >= 0){
int cur = num1[i] - '0' + num2[j] - '0' + ad;
char c = cur % 10 + '0';
ad = cur / 10;
ans += c;
--i;
--j;
}
while (i >= 0){
int cur = num1[i] - '0' + ad;
char c = cur % 10 + '0';
ad = cur / 10;
ans += c;
--i;
}
while (j >= 0){
int cur = num2[j] - '0' + ad;
char c = cur % 10 + '0';
ad = cur / 10;
ans += c;
--j;
}
if (ad > 0){
char c = ad + '0';
ans += c;
}
return string(ans.rbegin(), ans.rend());
}