50求救
查看原帖
50求救
457794
xbqlht21楼主2024/9/20 16:12
#include<bits/stdc++.h>
typedef int ll;
using namespace std;
ll a[1000005],z;
void f(string s)
{
	z=0;
	ll x=0;
	ll b=1;
	bool bb=1;
	memset(a,0,sizeof(a));
	for(ll i=0;i<s.size();i++)
	{
		if(s[i]=='\r')
		{
			break;
		}
		if(s[i]=='-')
		{
			if(bb)
			{
				b=-1;
			}
			else
			{
				x*=b;
				b=1;
				if(!bb)
				{
					z++;
					a[z]=x;
					x=0;
					bb=1;
				}
			}
		}
		else if('0'<=s[i]&&s[i]<='9')
		{
			bb=0;
			x*=10;
			x+=s[i]-'0';
		}
		else
		{
			x*=b;
			b=1;
			if(x!=0)
			{
				z++;
				a[z]=x;
				x=0;
			}
			bb=1;
		}
	}
	x*=b;
	if(x!=0)
	{
		z++;
		a[z]=x;
		x=0;
	}
}
int main()
{
//	ios::sync_with_stdio(0);
//	cin.tie(0);
//	cout.tie(0);
//	freopen("in","r",stdin);
//	freopen("out","w",stdout);
	string s;
	while(getline(cin,s))
	{
		f(s);
		ll k=0;
		for(ll i=1;i<=z;i++)
		{
			k+=a[i];
		}
		if(z!=0)
		{
			cout<<k<<"\n";
		}
//		break;
	}
	return 0;
}

RT

2024/9/20 16:12
加载中...