【PAT甲级】1036. Boys vs Girls (25)

来源:互联网 发布:趣医网络 编辑:程序博客网 时间:2024/05/21 19:28
#include <stdio.h>#include <algorithm>#include <deque>using namespace std;typedef struct Stu {    char name[11];    char gender;    char course[11];    int grade;} Stu;deque<Stu> q;bool com(Stu a, Stu b) {    if (a.gender < b.gender) return true;    else if (a.gender == b.gender && a.grade > b.grade) return true;    return false;}int main(int argc, char *argv[]) {    int n;    scanf("%d", &n);    int i;    char a[11], b, c[11];    int g;    for (i = 0; i < n; i++) {        Stu s;        scanf("%s %c %s %d", s.name, &s.gender, s.course, &s.grade);        q.push_back(s);    }    sort(q.begin(), q.end(), com);    int flag = true;    if (q.size() == 0) {        printf("Absent\nAbsent\nNA\n");    } else if (q.size() >= 1) {        if (q.front().gender == 'F') {            printf("%s %s\n", q.front().name, q.front().course);        } else {            printf("Absent\n");            flag = false;        }        if (q.back().gender == 'M') {            printf("%s %s\n", q.back().name, q.back().course);        } else {            printf("Absent\n");            flag = false;        }        if (flag == true) {            printf("%d\n", q.front().grade - q.back().grade);        } else {            printf("NA\n");        }    }    return 0;}
0 0
原创粉丝点击