记录编号 |
370017 |
评测结果 |
AAAAAAAAAA |
题目名称 |
[NOIP 2007]奖学金 |
最终得分 |
100 |
用户昵称 |
kZime |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.002 s |
提交时间 |
2017-02-12 16:16:03 |
内存使用 |
0.32 MiB |
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;
int n;
inline int read()
{
int k=0;
char f=1;
char c=getchar();
for(;!isdigit(c);c=getchar() )
if(c=='-')
f=-1;
for(;isdigit(c);c=getchar() )
k=k*10+c-'0';
return k*f;
}
struct cj{
int name,y,sum;
}s[301];
bool cmp(cj a,cj b){
if(a.sum<b.sum)return 1;
else if(a.sum==b.sum){
if(a.y<b.y)return 1;
else if(a.y==b.y&&a.name>b.name){
return 1;
}
}
return 0;
}
int main(){
freopen("pj07-1.in","r",stdin);
freopen("pj07-1.out","w",stdout);
scanf("%d",&n);
for(int m,e,i=1;i<=n;i++){
//scanf("%d%d%d",&s[i].y,&m,&e);
s[i].y=read();
m=read();
e=read();
s[i].name=i;
s[i].sum=s[i].y+m+e;
}
sort(s+1,s+1+n,cmp);
for(int i=n;i>n-5;i--){
cout<<s[i].name<<" "<<s[i].sum<<"\n";
}
return 0;
}