社区讨论
80分求调,必关
P1601高精度加法参与者 4已保存回复 5
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 5 条
- 当前快照
- 1 份
- 快照标识符
- @mdh23yys
- 此快照首次捕获于
- 2025/07/24 15:14 8 个月前
- 此快照最后确认于
- 2025/11/04 03:49 4 个月前
CPP
#include<bits/stdc++.h>
using namespace std;
vector<int>a;
vector<int>b;
vector<int>c;
string sa,sb;
int main(){
cin>>sa>>sb;
reverse(sa.begin(),sa.end());
reverse(sb.begin(),sb.end());
if(sb.size()>sa.size()) swap(sa,sb);
a.resize(sa.size());
b.resize(sb.size());
for(int i=0;i<sa.size();i++){
a[i]=sa[i]-'0';
}
for(int i=0;i<sb.size();i++){
b[i]=sb[i]-'0';
}
int la=sa.size(),lb=sb.size();
c.resize(la+1);
for(int i=0;i<la;i++){
if(i<lb){
c[i]+=a[i]+b[i];
}
else c[i]+=a[i];
c[i+1]+=c[i]/10;
c[i]%=10;
}
if(c[la]) la++;
while(c[la]==0) la--;
for(int i=la;i>=0;i--){
cout<<c[i];
}
return 0;
}
回复
共 5 条回复,欢迎继续交流。
正在加载回复...