#include<iostream> #include<stdio.h> #include<stdlib.h> #include<math.h> #include<string.h> #include<algorithm> #include<map> #include<vector> #include<queue> using namespace std; //边读入边比较 struct person{ char name[15]; //姓名 char id[15]; //ID int score; //分数 }M,F,temp; //M为男生最低分数的信息,F为女生最高分数的信息 void init(){ M.score=101; //初始化男生最低分数为较大值101 F.score=-1; //初始化女生最高分数为较小值-1 } int main(){ init(); //初始化 int n; //学生数 char gender; scanf("%d",&n); for(int i=0;i<n;i++){ scanf("%s %c %s %d",temp.name,&gender,temp.id,&temp.score); if(gender == 'M'&& temp.score<M.score){ M=temp;//男生,且分数低于当前M的分数,则更新M }else if(gender== 'F' && temp.score>F.score){ F=temp; //女生,且分数高于当前F的分数,则更新F } } if(F.score == -1) printf("Absent\n"); //没有女生 else printf("%s %s\n",F.name,F.id); if(M.score == 101) printf("Absent\n"); //没有男生 else printf("%s %s\n",M.name,M.id); if(F.score == -1 || M.score ==101) printf("NA\n"); //没有女生或男生 else printf("%d\n",F.score-M.score); system("pause"); return 0; }