64,681
社区成员
发帖
与我相关
我的任务
分享
#include <stdio.h>
#include <algorithm>
using namespace std;
struct Info
{
char id[11];
int score1,score2,score3,score;
};
Info p[10];
int n;
bool cmp1(const Info &a,const Info &b)
{
if(strcmp(a.id,b.id)<=0)
return 1;
return 0;
}
bool cmp2(const Info &a,const Info &b)
{
return a.score>b.score;
}
void print()
{
for(int i=0;i<n;i++)
printf("%s %d %d %d %d\n",p[i].id,p[i].score1,p[i].score2,p[i].score3,p[i].score);
}
int main()
{
scanf("%d",&n);
for(int i=0;i<n;i++)
{
scanf("%s%d%d%d",p[i].id,&p[i].score1,&p[i].score2,&p[i].score3);
p[i].score=(p[i].score1+p[i].score2+p[i].score3)/3;
}
sort(p,p+n,cmp1);
print();
sort(p,p+n,cmp2);
print();
}