记录编号 134676 评测结果 ATAAAAAAAT
题目名称 [USACO Mar07] 平衡的阵容 最终得分 80
用户昵称 GravatarRP++ 是否通过 未通过
代码语言 C++ 运行时间 3.068 s
提交时间 2014-10-30 17:36:52 内存使用 0.63 MiB
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<algorithm>

using namespace std;

struct node{
	int nData;
	int pos;
}f[50001];

int comp(const node&a,const node&b)
{
	return a.pos<b.pos;
}

int main()
{
	freopen("balance.in","r",stdin);
	freopen("balance.out","w",stdout);
	int num;
	scanf("%d",&num);
	for(int i=1;i<=num;i++)
	{
		scanf("%d%d",&f[i].nData,&f[i].pos);
		if(!f[i].nData)f[i].nData=-1;
	}
	sort(f+1,f+num+1,comp);
	for(int i=2;i<=num;i++)
	    f[i].nData+=f[i-1].nData;
	int ans=0;
	for(int i=1;i<=num;i++)
	{
		for(int j=num;j>=i;j--)
		{
			if(f[j].nData-f[i-1].nData==0&&ans<f[j].pos-f[i].pos)
			{
                ans=f[j].pos-f[i].pos;
                break;
			}
		}
	}
	printf("%d",ans);
}