题解 | #成绩排序#
成绩排序
https://www.nowcoder.com/practice/8e400fd9905747e4acc2aeed7240978b
#include<iostream> #include<string> #include<vector> #include<algorithm> using namespace std; struct Stu { string name; int score; }; bool f1(Stu a,Stu b) { return a.score>b.score; } bool f0(Stu a,Stu b) { return a.score<b.score; } int main() { int n,flag; while(cin>>n>>flag) { vector<Stu>stu; for(int i=0;i<n;i++) { Stu student; cin>>student.name>>student.score; stu.push_back(student); } if(flag) { stable_sort(stu.begin(),stu.end(),f0); }else { stable_sort(stu.begin(),stu.end(),f1); } for(int i=0;i<n;i++) { cout<<stu[i].name<<" "<<stu[i].score<<endl; } } return 0; }