2024.3.27複試記錄

writecodechangeworld發表於2024-03-27

1.algorithm 實現a+b 字串的加法
注意事項對進位的控制
int carry=0
i=a.size()-1;j=b.size()-1;
while(i>=0;j>=0){
string res="";
num=carry+a[i]-'0'+b[i]-'0';//-'0'是為了變為char
res+=num%10+'0';
carry=num/10;//若大於10,則carry=1
i--;j--
}//需要兩個str都存在相應的位數
while (i>=0)
{
int num = carry + a[i] - '0';
res += num % 10 + '0';
carry = num / 10;
i--;
}
while (j >= 0)
{
int num = carry + a[j] - '0';
res += num % 10 + '0';
carry = num / 10;
j--;
}
if (carry > 0) {
res =res + to_string(carry);
}
reverse(res.begin(), res.end());
return res;

相關文章