压位高精40pts玄关求条
查看原帖
压位高精40pts玄关求条
1271324
TH_HaZel楼主2024/8/19 08:56

样例过了,但对于

99999999
1

这组数据输出为999910000,调了很久,求帮

#include<bits/stdc++.h>
using namespace std;
#define int long long
int a[130],b[130],c[130];
string s1,s2;
signed main()
{
	cin>>s1>>s2;
	reverse(s1.begin(),s1.end());
	reverse(s2.begin(),s2.end());
	int now1=0,now2=0,su1=1,su2=1;
	for(int i=0;i<s1.size();i++)
	{
		if(su1==10000)
		{
			now1++;
			su1=1;
		}
		a[now1]+=su1*(s1[i]-'0');
		su1*=10;
	}
	for(int i=0;i<s2.size();i++)
	{
		if(su2==10000)
		{
			now2++;
			su2=1;
		}
		a[now2]+=su2*(s2[i]-'0');
		su2*=10;
	}
	int l=max(now1,now2)+1;
	int k=0;
	for(int i=0;i<=l;i++)
	{
		c[i]=a[i]+b[i]+k;
		k=c[i]/10000;
		c[i]%=10000;
	}
	if(a[l]==0)l--;
	for(int i=l;i>=0;i--)cout<<a[i];
}
2024/8/19 08:56
加载中...