• 1083. List Grades


    1083. List Grades (25)

    时间限制
    400 ms
    内存限制
    65536 kB
    代码长度限制
    16000 B
    判题程序
    Standard
    作者
    CHEN, Yue

    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 #include<stdio.h>
     2 #include<math.h>
     3 #include<stdlib.h>
     4 #include<string.h>
     5 #include<algorithm>
     6 using namespace std;
     7 
     8 struct stu
     9 {
    10     char name[15], id[15];
    11     int grade;
    12 }a[100000];
    13 
    14 bool cmp(stu x, stu y)
    15 {
    16     return x.grade > y.grade;
    17 }
    18 
    19 int main()
    20 {
    21     int n, i, flag = 0;
    22     scanf("%d", &n);
    23     for(i = 0; i < n; i++)
    24     {
    25         scanf("%s%s%d", a[i].name, a[i].id, &a[i].grade);
    26     }
    27     int grade1, grade2;
    28     scanf("%d%d", &grade1, &grade2);
    29     sort(a, a + n, cmp);
    30     for(i = 0; i < n; i++)
    31     {
    32         if(a[i].grade >= grade1 && a[i].grade <= grade2)
    33         {
    34             printf("%s %s
    ", a[i].name, a[i].id);
    35             flag = 1;
    36         }
    37     }
    38     if(!flag)
    39         printf("NONE
    ");
    40     return 0;
    41 }
  • 相关阅读:
    [Codeforces #494] Tutorial
    [BZOJ 3223] 文艺平衡树
    [P2698][USACO12MAR]花盆Flowerpot
    [Atcoder Regular Contest 061] Tutorial
    [BZOJ 1855] 股票交易
    [BZOJ 1076] 奖励关
    [BZOJ 2298] Problem A
    数据库三大范式
    mybatis插件机制原理
    Mybatis有哪些执行器?
  • 原文地址:https://www.cnblogs.com/yomman/p/4282160.html
Copyright © 2020-2023  润新知