题目
思路
每读入一个人,就判断这个人是男性还是女性,分情况和全局最优解进行比较即可;
代码
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
int main()
{
int n, grade;
string name, id, gender;
string fName = "Absent", fId, mName = "Absent", mId;
int fGrade = 0, mGrade = 102;
scanf("%d", &n);
for(int i = 0; i < n; i ++){
cin >> name >> gender >> id >> grade;
//是男性
if(gender == "M"){
if(grade < mGrade) mName = name, mId = id, mGrade = grade;
}
//是女性
else {
if(grade > fGrade) fName = name, fId = id, fGrade = grade;
}
}
//输出
if(fName == "Absent") printf("Absent\n");
else cout << fName << " " << fId << endl;
if(mName == "Absent") printf("Absent\n");
else cout << mName << " " << mId << endl;
if(fName == "Absent" || mName == "Absent") printf("NA\n");
else printf("%d\n", fGrade - mGrade);
system("pause");
return 0;
}