用vector写高精度加法C++
时间: 2024-06-10 14:08:15 浏览: 114
好的,关于使用 vector 写高精度加法的问题,我可以给您提供一个样例代码作为参考:
```c++
#include<iostream>
#include<vector>
using namespace std;
vector<int> add(vector<int> &a, vector<int> &b) {
vector<int> ans;
int carry = 0;
for (int i = 0; i < max(a.size(), b.size()); i++) {
if (i < a.size()) carry += a[i];
if (i < b.size()) carry += b[i];
ans.push_back(carry % 10);
carry /= 10;
}
if (carry) ans.push_back(carry);
return ans;
}
int main() {
string sa, sb;
cin >> sa >> sb;
vector<int> a, b;
for (int i = sa.size()-1; i >=0; i--) a.push_back(sa[i] - '0');
for (int i = sb.size()-1; i >=0; i--) b.push_back(sb[i] - '0');
vector<int> ans = add(a, b);
for (int i = ans.size()-1; i >=0; i--) cout << ans[i];
cout << endl;
return 0;
}
```
希望这能够帮助您。
阅读全文