Poombom @ 2023-07-01 08:58:27
本来是写完P1303回来逝逝的,结果50分......
在P1303都AC了
代码:
#include<bits/stdc++.h>
using namespace std;
int a[1000001]={},b[1000001]={},c[1000001]={},i,f;
char d[1000001],e[1000001];
bool x=false;
int main( )
{
cin>>d>>e;
a[0]=strlen(d);
b[0]=strlen(e);
for(i=1;i<=a[0];i++)a[i]=d[a[0]-i]-'0';
for(i=1;i<=b[0];i++)b[i]=e[b[0]-i]-'0';
f=max(a[0],b[0]);
for(i=1;i<f+1;i++)
{
c[i]=a[i]+b[i];
if(c[i]>=10){c[i]%=10;b[i+1]++;}
}
c[i]=b[i];
if(c[i] != 0)cout<<c[i];
c[0]=i;
for(int i=c[0]-1; i>=1; i--) {
cout<<c[i];
}
return 0;
}
敲了有一个小时才敲出来的
可能我还是太菜了
by Weizhuo_Zhao @ 2023-07-01 09:39:44
@cq_zry 不对,我好想迷糊了...
by cq_zry @ 2023-07-01 09:42:13
@Weizhuo_Zhao 你指的高精是 long long
嘛
by Weizhuo_Zhao @ 2023-07-01 09:43:23
@cq_zry 不细,我迷了
by lorry26 @ 2023-07-01 09:55:34
a+b?
by lorry26 @ 2023-07-01 10:02:07
高精码:
#include<bits/stdc++.h>
using namespace std;
int a[1000001],b[1000001],c[1000001],j;
bool x=false;
char s[1000001],s2[1000001];
int main() {
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
memset(c,0,sizeof(c));
scanf("%s%s",s,s2);
a[0]=strlen(s);
b[0]=strlen(s2);
for(int i=1; i<=a[0]; i++) a[i]=s[a[0]-i]-'0';
for(int i=1; i<=b[0]; i++) b[i]=s2[b[0]-i]-'0';
for(j=1; j<=max(a[0],b[0])+1; j++) {
c[j]=a[j]+b[j];
if(c[j]>=10) {
c[j]%=10;
a[j+1]++;
}
}
c[0]=j;
if(c[j+1]>0) c[0]++;
for(int i=c[0]; i>=1; i--)
{
if(x==false&&c[i]==0) continue;
x=true;
cout<<c[i];
}
if(x==false) cout<<0;
printf("\n");
return 0;
}
低精码:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int a,b;
cin>>a>>b;
cout<<a+b;
return 0;
}
by steelseries @ 2023-07-02 21:23:22
SO,高精度有用吗
by chensicheng0402 @ 2023-07-03 18:25:42
这题根本不需要用高精
by CznTree @ 2023-07-04 08:30:39
@kristopher 当然有用了 你这什么问题啊。
当数爆 long long
时就需要高精度
oi里还是经常遇见的,模板也经常考
by mc_lhz @ 2023-07-08 16:03:35
@chensicheng0402 要
by White_Falcon @ 2023-07-14 15:11:44