51分求救!
查看原帖
51分求救!
872386
Officer楼主2024/7/18 22:32
#include<bits/stdc++.h>
using namespace std;
string s[20];
long long n,sum,ans[20];
long long f(char c)
{
	if(c=='/')
	{
		return 10;
	}
	else
	{
		return int(c)-'0';
	}
}
long long ind(long long i)
{
	string st=s[i],st2=s[min(i+1,n)],st3=s[min(i+2,n)];
	long long ans=0;
	if(st[0]!='/'&&st[1]!='/')
	{
		ans=f(st[0])+f(st[1]);
	}
	else
	{
		if(st[0]=='/')
		{
			if(st2[0]=='/'&&st2.size()==1)
			{
				ans=20+f(st3[0]);
			}
			else
			{
				ans=10+min(1ll*10,f(st2[0])+f(st2[1]));
			}
		}
		else
		{
			ans=10+f(st2[0]);
		}
	}
	return ans;
}
int main()
{
	for(n=1;n<=10;n++)
	{
		cin>>s[n];
	}
	if(s[10][0]=='/')
	{
		cin>>s[11];
		n++;
		if(s[11].size()==1)
		{
			cin>>s[12];
			n++;
		}
	}
	else if(s[10].size()>1)
	{
		if(s[10][1]=='/')
		{
			cin>>s[11];
		}
	}
	for(long long i=1;i<=10;i++)
	{
		ans[i]=ind(i);
		cout<<ans[i]<<" ";
	}
	cout<<endl;
	for(long long i=1;i<=10;i++)
	{
		sum+=ans[i];
		cout<<sum<<" ";
	}
 	return 0;
}
/*
*/

2024/7/18 22:32
加载中...