PAT特别多的成绩分类排序,输出在给定范围内的学生名字和id。
#include <bits/stdc++.h>
using namespace std;
struct Node{
string name,id;
int grade;
bool friend operator <(Node a,Node b){
return a.grade>b.grade;
}
};
vector<Node> vec;
int main(){
int n;
scanf("%d\n",&n);
for(int i=0;i<n;i++){
Node nd;
cin>>nd.name>>nd.id>>nd.grade;
vec.push_back(nd);
}
int range1,range2;
cin>>range1>>range2;
vector<Node> res;
for(auto item:vec){
if(item.grade<=range2 &&item.grade>=range1)res.push_back(item);
}
sort(res.begin(),res.end());
if(res.size()==0)printf("NONE\n");
else{
for(auto item:res){
printf("%s %s\n",item.name.c_str(),item.id.c_str());
}
}
}