记录编号 29998 评测结果 AAAAAAAAAA
题目名称 抗震救灾 最终得分 100
用户昵称 GravatarCloud 是否通过 通过
代码语言 C++ 运行时间 0.053 s
提交时间 2011-10-27 09:27:50 内存使用 0.64 MiB
显示代码纯文本
#include<cstdio>
#include<cstring>
#include<cstdlib>
struct f
{
	int m,ans;
	char c[21],s[50];
}y[5001];
int n,t1,tmp;
int cmp(const void *y,const void *b)
{
	char c1[50],c2[50];
	int l1,l2,i;
	strcpy(c1,(*(f *)y).s);
	strcpy(c2,(*(f *)b).s);
	l1=strlen(c1);
	l2=strlen(c2);
	if(l1>l2)
		return 1;
	if(l1<l2)
		return -1;
	for(i=0;i<l1;i++)
	{
		if(c1[i]>c2[i])
			return 1;
		if(c1[i]<c2[i])
			return -1;
	}
	return 1;
}
int main()
{
	freopen("savez.in","r",stdin);
	freopen("savez.out","w",stdout);
	n=0;
	while(scanf("%d%s%s",&y[n+1].m,&y[n+1].s,&y[n+1].c)==3)
	{
		n++;
		tmp+=y[n].m;
	}
	tmp=(tmp+1)/2;
	qsort(y+1,n,sizeof(f),cmp);
	for(int p=1;p<=n;p++)
	{
		t1+=y[p].m;
		if(t1>=tmp)
		{
			printf("%s\n",y[p].c);
			break;
		}
	}
	return 0;
}