#include<stdio.h>
#include<stdlib.h>
#include<string.h>
struct c
{
char name[20];
int x;//名次
int y;//时间
}d[1000];
int comp(const void *a,const void *b)
{
struct c *p1=(struct c *)a;
struct c *p2=(struct c *)b;
if(p1->x!=p2->x)
return -(p1->x-p2->x);
else if(p1->y!=p2->y)
return p1->y-p2->y;
else
return strcmp(p1->name,p2->name);
}
int main()
{
char str[10];
int a,b,i,t;
int n,m,j=0;
struct c d[1000]={0};
scanf("%d %d",&n,&m);
while(scanf("%s",d[j].name)!=EOF)
{
for(i=0;i<n;i++)
{
scanf("%s",str);
t=sscanf(str,"%d(%d)",&a,&b);
if(t==2)
{
d[j].y=d[j].y+b*m+a;
d[j].x++;
}
else if(t==1 && a>0)
{
d[j].x++;
d[j].y=d[j].y+a;
}
}
j++;
}
qsort(d,j,sizeof(struct c),comp);
for(i=0;i<j;i++)
{
printf("%-10s %2d %4d\n",d[i].name,d[i].x,d[i].y);
}
return 0;
}
sscanf的使用 HDU 2093
最新推荐文章于 2021-05-05 21:00:07 发布