记录编号 |
89219 |
评测结果 |
AAAAAAAAAA |
题目名称 |
[NOIP 2009]分数线划定 |
最终得分 |
100 |
用户昵称 |
Bokjan |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.027 s |
提交时间 |
2014-02-28 19:52:53 |
内存使用 |
2.14 MiB |
显示代码纯文本
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
typedef struct{
int id;
int score;
} volunteer;
int comp(const void *a,const void *b);
int main(){
freopen("score.in","r",stdin);
freopen("score.out","w",stdout);
volunteer v[5000];
int n,m;
int i;
scanf("%d%d",&n,&m);
for(i=0;i<n;i++)
scanf("%d%d",&v[i].id,&v[i].score);
qsort(v,n,sizeof(volunteer),comp);
int line=v[((int)floor(m*1.5))-1].score;
for(i=((int)floor(m*1.5))-1;i<n;i++){
if(v[i].score<line){
break;
}
}
int total=i;
printf("%d %d\n",line,total);
for(i=0;i<total;i++)
printf("%d %d\n",v[i].id,v[i].score);
return 0;
}
int comp(const void *a,const void *b){
volunteer *c = (volunteer *)a;
volunteer *d = (volunteer *)b;
if(c->score != d->score)
return d->score - c->score;
else
return c->id - d->id;
}