求助
查看原帖
求助
404469
LJN1117楼主2022/10/1 14:31
#include<bits/stdc++.h>
#define int long long
#define maxn 1000000+5
using namespace std;
int m,t;
int ans=0,sum=0;
int ti[maxn]={0},time_sum[maxn]={0};
int k=1;
signed main()
{
	freopen("money.in","r",stdin);
	freopen("money.out","w",stdout);
	scanf("%lld",&m);
	for(int i=1;i<=m;i++)
	{
		for(int j=1;j<=k-1;j++)
		{
			if(ti[j]==i)
			{
				sum+=time_sum[j];
				ti[j]=-1;
			}
		}
		int a,b;
		scanf("%lld",&t);
		if(t==1)
		{
			scanf("%lld",&a);
			sum+=a;
		}
		else if(t==2)
		{
			scanf("%lld",&a);
			if(sum>=a)
			{
				sum-=a;
			}
			else
			{
				ans++;
			}
		}
		else
		{
			scanf("%lld %lld",&a,&b);
			ti[k]=b;
			time_sum[k]=a;
			k++;
		}
	}
	printf("%lld\n",ans);
	return 0;
}

跟老师讲的方法一样,为什么70pts?

2022/10/1 14:31
加载中...