杨嘉琪


私信TA

用户名:dotcpp0664564

访问量:1443

签 名:

等  级
排  名 657
经  验 4028
参赛次数 1
文章发表 21
年  龄 0
在职情况 学生
学  校
专  业

  自我简介:

TA的其他文章

1755: 姓名排序
浏览:22

解题思路:

注意事项:

参考代码:

#include<stdio.h>

struct xs {

int id;

int mark;

};

struct xs x[5001];

struct xs t;

int main() {

int n, m;

int i, j;

scanf("%d %d", &n, &m);

for (i = 0; i < n; i++) {

scanf("%d %d", &x[i].id, &x[i].mark);

}

m *= 1.5;

for (i = 0; i < n - 1; i++) {

for (j = 0; j < n - i; j++) {

if (x[j].mark < x[j + 1].mark) {

t = x[j];

x[j] = x[j + 1];

x[j + 1] = t;

} else if (x[j].mark == x[j + 1].mark) {

if (x[j].id > x[j + 1].id) {

t = x[j];

x[j] = x[j + 1];

x[j + 1] = t;

}

}

}

}

// printf("\n");

// for(i=0;i<n;i++){

// printf("%d %d\n",x[i].id,x[i].mark);

// }

int s=0;

for (i = 0; i < n; i++) {

if(x[i].mark>=x[m].mark){

s++;

}

}

printf("%d %d\n", x[m].mark,s);

for (i = 0; i < s; i++) {

printf("%d %d\n", x[i].id, x[i].mark);

}


}


 

0.0分

0 人评分

  评论区

  • «
  • »