寫在前面
題目詳情
給定兩個字符串形式的非負整數 num1 和num2 ,計算它們的和。
注意:
num1 和num2 的長度都小於 5100.
num1 和num2 都只包含數字 0-9.
num1 和num2 都不包含任何前導零。
你不能使用任何內建 BigInteger 庫, 也不能直接將輸入的字符串轉換爲整數形式。
ac代碼
class Solution
{
public:
string addStrings(string num1, string num2)
{
string ans;
int a = num1.size(), b = num2.size();
if(a==0 || b==0)
return ans;
a--,b--;
int carry = 0;
while(a>=0 || b>=0|| carry !=0)
{
if(a>=0) carry += num1.at(a--)-'0';
if(b>=0) carry += num2.at(b--)-'0';
ans.push_back(carry%10+'0');
carry/=10;
}
reverse(ans.begin(), ans.end());
return ans;
}
};