60分 3和5输出too short 求助(悲
查看原帖
60分 3和5输出too short 求助(悲
1029978
zyh1145楼主2023/9/25 22:57
#include <bits/stdc++.h>
using namespace std;
int l1,l2,maxx,bianjie,ii,a[10001],b[10001],c[10001];
bool jinwei;
string s1,s2;
int main()
{
	cin>>s1;
	l1 = s1.length();
	cin>>s2;
	l2 = s2.length();
	maxx = max(l1,l2);
	if (s1 == "0")
	{
		cout<<s2;
		return 0;
	}
	if (s2 == "0")
	{
		cout<<s1;
		return 0;
	}
	//cout<<"maxx="<<maxx<<'\n';
	for (int i = 0;i < maxx;i++)
	{
		a[l1-i] = s1[i] - '0';
		b[l2-i] = s2[i] - '0';
	}
	for (int i = maxx;i >= 1;i--)
	{
		c[i] = a[i] + b[i];
		if (c[i] >= 10)
		{
			c[i+1]++;
			ii = i+1;
			while (c[ii] >= 10)
			{
				c[ii] -= 10;
				ii++;
				c[ii]++;
				if (ii > maxx)
				{
					bianjie = 1;
				}
			}
			c[i] -= 10;
			if (i == maxx)
			{
				bianjie = 1;
			}
			//cout<<"c["<<i+1<<"]++;\n";
		}
	}
	for (int i = maxx + bianjie;i >= 1;i--)
	{
		cout<<c[i];
	}
    return 0;
}
2023/9/25 22:57
加载中...