#6WA求助
  • 板块CF2A Winner
  • 楼主Cym10x
  • 当前回复1
  • 已保存回复1
  • 发布时间2020/10/2 08:00
  • 上次更新2023/11/5 12:17:15
查看原帖
#6WA求助
354015
Cym10x楼主2020/10/2 08:00
#include<stdio.h>
#include<string.h>
using namespace std;
struct player/*玩家信息*/ 
{
	char name[40];/*名称*/
	int score;/*总分*/
	int t;/*最后得分的时间*/
}p[1001];
int total=0,n,f,k;char plc[40];
int findplayer(char *pl)/*通过名称寻找玩家*/ 
{
	for(int i=1;i<=total;i++)
		if(strcmp(p[i].name,pl)==0)/*strcmp比较*/ 
			return i; /*返回该玩家下标*/
	return -1;/*找不到*/
}
int findmax()
{
	int mp=1;/*最大者下标*/
	for(int i=2;i<=total;i++)
		if((p[mp].score<p[i].score)||((p[mp].score==p[i].score)&&(p[mp].t>p[i].t)))
			mp=i;
	return mp;
}
int main()
{
/*	freopen("in.txt","r",stdin);*/
	scanf("%d",&n);
	for(int i=1;i<=n;i++)
	{
		scanf("%s",plc);
		f=findplayer(plc);
		if(f==-1)/*新申请*/
		{
			total++;/*当前玩家数+1*/ 
			strcpy(p[total].name,plc);/*存储名称*/
			scanf("%d",&p[total].score);
			p[total].t=i;/*记录时间*/
		}
		else
		{
			scanf("%d",&k);
			p[f].score+=k;/*得分累加*/
			p[f].t=i;/*记录时间*/
		}
	}
	f=findmax();
	printf("%s\n",p[f].name);
	return 0;
} 
2020/10/2 08:00
加载中...