码迷,mamicode.com
首页 > 其他好文 > 详细

PAT A1083 List Grades

时间:2019-09-28 12:26:17      阅读:100      评论:0      收藏:0      [点我收藏+]

标签:character   tee   题目   incr   注意事项   hat   ted   ace   record   

PAT A1083 List Grades

题目描述:

  Given a list of N student records with name, ID and grade. You are supposed to sort the records with respect to the grade in non-increasing order, and output those student records of which the grades are in a given interval.

  Input Specification:
  Each input file contains one test case. Each case is given in the following format:
  N
  name[1] ID[1] grade[1]
  name[2] ID[2] grade[2]
  ... ...
  name[N] ID[N] grade[N]
  grade1 grade2
  where name[i] and ID[i] are strings of no more than 10 characters with no space, grade[i] is an integer in [0, 100], grade1 and grade2 are the boundaries of the grade‘s interval. It is guaranteed that all the grades are distinct.

  Output Specification:
  For each test case you should output the student records of which the grades are in the given interval [grade1, grade2] and are in non-increasing order. Each student record occupies a line with the student‘s name and ID, separated by one space. If there is no student‘s grade in that interval, output NONE instead.

  Sample Input 1:
  4
  Tom CS000001 59
  Joe Math990112 89
  Mike CS991301 100
  Mary EE990830 95
  60 100

  Sample Output 1:
  Mike CS991301
  Mary EE990830
  Joe Math990112

  Sample Input 2:
  2
  Jean AA980920 60
  Ann CS01 80
  90 95

  Sample Output 2:
  NONE

参考代码:

 1 /****************************************************
 2 PAT A1083 List Grades
 3 ****************************************************/
 4 #include <iostream>
 5 #include <algorithm>
 6 #include <vector>
 7 
 8 using namespace std;
 9 
10 struct stuInfo {
11     string name;
12     string stuId;
13     int grade;
14 };
15 
16 bool myCmp(stuInfo a, stuInfo b) {
17     return a.grade > b.grade;
18 }
19 
20 int main() {
21     int stuCnt = 0, searchLeft = 0, searchRight = 0, printStuCnt = 0;
22 
23     cin >> stuCnt;
24 
25     vector<stuInfo> scoreList(stuCnt);
26     for (int i = 0; i < stuCnt; ++i) {
27         cin >> scoreList[i].name >> scoreList[i].stuId >> scoreList[i].grade;
28     }
29 
30     sort(scoreList.begin(), scoreList.end(), myCmp);
31 
32     cin >> searchLeft >> searchRight;
33 
34     for (int i = 0; i < stuCnt; ++i) {
35         if (scoreList[i].grade >= searchLeft && scoreList[i].grade <= searchRight) {
36             if (printStuCnt != 0) cout << endl;
37 
38             cout << scoreList[i].name <<   << scoreList[i].stuId;
39 
40             ++printStuCnt;
41         }
42     }
43 
44     if (printStuCnt == 0) cout << "NONE";
45 
46     return 0;
47 }

注意事项:

  无。

PAT A1083 List Grades

标签:character   tee   题目   incr   注意事项   hat   ted   ace   record   

原文地址:https://www.cnblogs.com/mrdragon/p/11602501.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!