PAT甲级1083 List Grades (25 分)

Posted ldudxy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PAT甲级1083 List Grades (25 分)相关的知识,希望对你有一定的参考价值。

题意:

输入一个正整数N(<=101),接着输入N个学生的姓名,id和成绩。接着输入两个正整数X,Y(0<=X,Y<=100),逆序输出成绩在x,y之间的学生的姓名和id。

trick:

测试点3格式错误因为输出的所有学生姓名和id后面都要换行,大概如果PAT没说不要输出多余的换行的话,就全都加个换行,说了就不加。。。。。??

代码:

#define HAVE_STRUCT_TIMESPEC
#include<bits/stdc++.h>
using namespace std;
typedef struct student{
string name,id;
int grade;
};
student a[107];
bool cmp(student a,student b){
return a.grade>b.grade;
}
int main(){
ios::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
int n;
cin>>n;
for(int i=1;i<=n;++i){
cin>>a[i].name>>a[i].id>>a[i].grade;
}
int x,y;
cin>>x>>y;
if(x>y)
swap(x,y);
sort(a+1,a+1+n,cmp);
int flag=0;
for(int i=1;i<=n;++i){
if(a[i].grade>=x&&a[i].grade<=y){
cout<<a[i].name<<" "<<a[i].id<<" ";
flag=1;
}
}
if(!flag)
cout<<"NONE";
return 0;
}

以上是关于PAT甲级1083 List Grades (25 分)的主要内容,如果未能解决你的问题,请参考以下文章

PAT(A) 1083. List Grades (25)

1083. List Grades (25)水题——PAT (Advanced Level) Practise

PAT (Advanced Level) 1083. List Grades (25)

PAT A1083 List Grades

1083. List Grades (25)

1083 List Grades (25 分)排序