虚空星胜 @ 2022-07-24 17:24:16
#include<bits/stdc++.h>
using namespace std;
string a,b;
int n1[2001],n2[2001],n3[2001],lena,lenb,lenc,x;
int main(){
cin>>a>>b;
lena=a.size();
lenb=b.size();
for(int i=0;i<lena;++i){
n1[lena-i]=a[i]-'0';
}
for(int i=0;i<lenb;++i){
n2[lenb-i]=b[i]-'0';
}
lenc=max(lena,lenb);
for(int i=1;i<=lenc;++i){
n3[i]=(n1[i]+n2[i]+x)%10;
x=(n1[i]+n2[i]+x)/10;
}
if(x>0) n3[++lenc]=1;
while(lenc>1&&n3[lenc]==0) --lenc;
for(int i=lenc;i>=1;--i){
cout<<n3[i];
}
}
by smart_zyx @ 2022-08-04 20:36:19
直接a+b就好了,如果2^64以上数据的话才需要高精,如果真要高精,可以参见以下
#include<bits/stdc++.h>
using namespace std;
char sa[1010],sb[1010];
int la,lb,lc,a[1010],b[1010],c[1010];
int main()
{
cin>>sa;
cin>>sb;
la=strlen(sa);
lb=strlen(sb);
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
for(int i=0;i<la;i++)
a[la-i-1]=sa[i]-'0';
for(int i=0;i<lb;i++)
b[lb-i-1]=sb[i]-'0';
lc=la>lb?la:lb;
memset(c,0,sizeof(c));
for(int i=0;i<lc;i++)
{
c[i]=a[i]+b[i]+c[i];
if(c[i]>=10)
{
c[i+1]=1;
c[i]-=10;
}
}
if(c[lc]>0) lc++;
for(int i=lc-1;i>=0;i--)
cout<<c[i];
return 0;
}
希望对你有用,其实这就是水题
我是新手,非喜勿喷
by fanke @ 2022-08-08 09:44:16
不用做处理,直接a+b就行啊
by dcmzwy @ 2022-08-12 15:02:55
This kind of topic does not need to be so complicated, just like the following code.
#include <iostream>
#include <cstdio>
using namespace std;
int main() {
int a,b;
cin>>a>>b;
cout<<a+b<endl;
return 0;
}
by yusicheng1210 @ 2022-08-16 19:40:47
这样不就行了?至于那么麻烦吗??? ```cpp
using namespace std; int main() { int a,b; cin>>a>>b; cout<<a+b; }
by ggy_yyds @ 2022-08-18 12:13:03
这题不用写高精,开个long long直接加
by EddySun @ 2022-08-25 14:31:15
最简单解法(给爷看好了!):
#include <iostream>
using namespace std;
int main ()
{
int n, m; //定义
cin >> n >> m; //输入
cout<< n+m << endl; //输出
return 0; //好习惯
}
喂!这题写这么长一坨屎山还有脸往洛谷上发求助!
by Soda_mew @ 2022-10-23 13:37:56
@LazYQwQ 上次我也用的abs()就没过
by Purple_Circle @ 2022-10-27 23:00:52
@EddySun 您是有什么资本与勇气以及幽默细胞才敢来这样发
by Purple_Circle @ 2022-10-27 23:03:04
大水题!!!你写这么长?
最简单解法(给爷看好了!):
喂!这题写这么长一坨屎山还有脸往洛谷上发求助!
您是真的不知道高精度,抑或是毫无幽默细胞,还是存心来钓鱼?(doge