记录编号 382848 评测结果 AAAAAAAAAA
题目名称 烤鸡翅 最终得分 100
用户昵称 Gravatarswttc 是否通过 通过
代码语言 C++ 运行时间 0.256 s
提交时间 2017-03-14 19:37:21 内存使用 4.13 MiB
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
#include<queue>
using namespace std;
priority_queue<long long>q;
long long sum=0,x[250010],y[250010],ans=0,t,ens=0,a;
int main()
{
	freopen("wing.in","r",stdin);
	freopen("wing.out","w",stdout);
	scanf("%lld",&t);
	for(long long i=1;i<=t;i++)
	{
		scanf("%lld",&x[i]);
	}
	for(long long i=1;i<=t;i++)
	{
		scanf("%lld",&y[i]);
	}
	
	for(long long i=1;i<=t;i++)
	{
		sum+=x[i];
	    if(sum>=y[i])
	    {
	    	sum-=y[i];
	    	ans++;
	    	q.push(y[i]);
		}
		else if(sum<y[i])
		{
			if(!q.empty())
			{
			  a=q.top();
			  if(a>=y[i])
			  {
				sum+=a;
				sum-=y[i];
				q.pop();
				q.push(y[i]);
			  }
		    }
		}
		ens=max(ans,ens);
	}
	printf("%lld",ans);
	return 0;
}