文章

1

粉丝

52

获赞

0

访问

217

头像
成绩排序2.0 题解:改了好多次了,一直都通过不了
P1159 清华大学上机题
发布于2024年3月23日 19:24
阅读数 217

#include<bits/stdc++.h>
using namespace std;
struct grade{
    int num;
    int score;
}g[105];
bool comp(grade l,grade r){
    return l.score<r.score;
}
bool comp1(grade l,grade r){
    return l.num<r.num;
}
int main() {
    int n;
    //struct grade g[100];
    while(scanf("%d",&n)!=EOF){
        for(int i=0;i<n;i++){
            scanf("%d %d",&g[i].num,&g[i].score);
        }
        sort(g,g+n,comp1);
        sort(g,g+n,comp);
        for(int i=0;i<n;i++){
            printf("%d %d\n",g[i].num,g[i].score);
        }
    }
}

登录查看完整内容


登录后发布评论

1 条评论
snake
2024年3月23日 20:00

不能分开用两个sort排序,这是一个二级排序的问题

要写在一个比较函数里,类似这样

赞(1)