Add Strings
程序员文章站
2022-06-04 11:02:08
...
题目来源
将两个数字字符串相加,返回结果字符串,我原来想着转换为整型,然后进行加法,然后再转为字符串。代码如下:
class Solution {
public:
string addStrings(string num1, string num2) {
int n1 = num1.size(), n2 = num2.size();
long long v1 = 0, v2 = 0;
for (int i=0; i<n1; i++) {
v1 = v1 * 10 + (num1[i] - '0');
}
for (int i=0; i<n2; i++) {
v2 = v2 * 10 + (num2[i] - '0');
}
return to_string(v1 + v2);
}
};
但是发现字符串长度可以达到5000+位,直接gg,转换为整型的方法显然行不通了。然后得一个一个加,代码如下:
class Solution {
public:
string addStrings(string num1, string num2) {
int n1 = num1.size(), n2 = num2.size();
int n = max(n1, n2);
string res = "";
bool carry = false;
for (int i=1; i<=n; i++) {
int tmp1 = n1 >= i ? num1[n1-i] - '0' : 0;
int tmp2 = n2 >= i ? num2[n2-i] - '0' : 0;
int tmp = tmp1 + tmp2;
if (carry)
tmp++;
res = to_string(tmp % 10) + res;
carry = tmp / 10;
}
if (carry)
res = '1' + res;
return res;
}
};
上一篇: Java连接各种数据库的实例
下一篇: JDBC连接各种数据库的方法
推荐阅读
-
在Parallel中使用DbSet.Add()发现的一系列多线程问题和解决思路详解
-
Hdu多校8-1009 hdu-6863 Isomorphic Strings
-
How to Add a Shortcode in WordPress? (Beginner’s Guide
-
How to add OpenCV library in spring web application
-
How to Add the JVM Component to an Existing Oracle Database
-
MySQL中的DATE_ADD应用场景_MySQL
-
javascript add event remove event_javascript技巧
-
jQuery.add() 函数的正确用法
-
力扣2. Add Two Numbers
-
ALTER TABLE ADD 增加多个字段 外键约束