高精度加法模板
2025-03-22 15:32:05
发布于:福建
#include <bits/stdc++.h>
using namespace std;
int a[1001000],b[1001000],c[1001000];
int main(){
string s1,s2; cin >> s1 >> s2;
if(s1=="0"&&s2=="0"){
cout<<0;
return 0;
}
int l1 = s1.size(),l2 = s2.size();
for(int i = 0;i < l1;i++) a[i] = s1[l1 - i - 1] - '0';
for(int i = 0;i < l2;i++) b[i] = s2[l2 - i - 1] - '0';
int l = max(l1,l2);
for(int i = 0;i < l;i++){
c[i] += a[i] + b[i];
if(c[i] >= 10){
c[i] -= 10;
c[i + 1]++;
}
}
while(c[l] == 0&&l>0) l--;
for(int i = l;i >= 0;i--) cout << c[i];
return 0;
}
这里空空如也
有帮助,赞一个