首页 > 学院 > 开发设计 > 正文

PAT 1062

2019-11-08 02:07:47
字体:
来源:转载
供稿:网友
#include<cstdio>#include<algorithm>#include<stdlib.h>#include<cstring>using namespace std;struct people{	char id[10];	int talent;	int virtue;	int c;}pe[100010];bool cmp(people st1,people st2){	if(st1.c!=st2.c)		return st1.c>st2.c;	else if((st1.talent+st1.virtue)!=(st2.talent+st2.virtue))			return (st1.talent+st1.virtue)>(st2.talent+st2.virtue);	else if((st1.talent+st1.virtue)==(st2.talent+st2.virtue))	{		if(st1.virtue!=st2.virtue)			return st1.virtue>st2.virtue;		else 			return strcmp(st1.id,st2.id)<0;	}}int main(){		int n,L,H,sum=0;	scanf("%d%d%d",&n,&L,&H);	for(int i=0;i<n;i++)	{		scanf("%s %d %d",pe[i].id,&pe[i].virtue,&pe[i].talent);		pe[i].c=0;		if(pe[i].virtue>=L&&pe[i].talent>=L)		{			if(pe[i].virtue>=H&&pe[i].talent>=H)			{				pe[i].c=4;			}			else if(pe[i].virtue>=H&&pe[i].talent<=H)			{				pe[i].c=3;			}			else if(pe[i].virtue<=H&&(pe[i].virtue>=pe[i].talent))			{				pe[i].c=2;				}			else				pe[i].c=1;			sum++;		}	}	sort(pe,pe+n,cmp);	PRintf("%d/n",sum);	for(int i=0;i<sum;i++)	{		printf("%s %d %d/n",pe[i].id,pe[i].virtue,pe[i].talent);	}		system("pause");	return 0;}
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表