文章

28

粉丝

0

获赞

384

访问

7.5k

头像
成绩排序2.0 题解:二元组存+sort自定义比较函数
P1159 清华大学上机题
发布于2026年2月10日 13:09
阅读数 166

#include <iostream>

#include <vector>

#include <algorithm>

using namespace std;

int main(){

  int n; cin>>n;

  int id,score;

  vector<pair<int,int>> arr;

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

    cin>>id;

    cin>>score;

    arr.push_back({id,score});

  }

//比较函数,成绩相同比学号,不相同按成绩升序

  sort(arr.begin(),arr.end(),[](const pair<int,int> &a,const pair<int,int> &b){

    if(a.second==b.second)return a.first<b.first;

    else return a.second<b.second;

  });

  for(auto p:arr){

    cout<<p.first<<" "<<p.second<<"\n";

  }

  return 0;

}

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发