Easy
Given two non-negative integers, `num1` and `num2` represented as string, return the sum of `num1` and `num2` as a string.
You must solve the problem without using any built-in library for handling large integers (such as `BigInteger`). You must also not convert the inputs to integers directly.
Example 1:
Input: num1 = "11", num2 = "123"
Output:
"134"
Example 2:
Input: num1 = "456", num2 = "77"
Output:
"533"
Example 3:
Input: num1 = "0", num2 = "0"
Output:
"0"
Constraints:
• `1 <= num1.length, num2.length <= 104`
• `num1` and `num2` consist of only digits.
• `num1` and `num2` don't have any leading zeros except for the zero itself.

### 解題

Runtime: 3 ms, faster than 77.07%
Memory Usage: 7 MB, less than 57.33%
func addStrings(num1 string, num2 string) string {
ans := ""
if len(num1)>len(num2) { num2 = appendZero(num2, len(num1)-len(num2)) }
if len(num1)<len(num2) { num1 = appendZero(num1, len(num2)-len(num1)) }
carry := 0
for i:= len(num1)-1; i>=0; i-- {
num := int (num1[i]-'0') + int(num2[i]-'0') + carry
carry = num / 10
ans = string( num % 10 + '0' ) + ans
}
if carry == 1 { ans = "1" + ans }
return ans
}
func appendZero(s string, n int) string {
for n>0 {
s = "0" + s
n--
}
return s
}