这个题那么一丢丢绕的慌,大概意思就是学生一共分为5类
- 德分、才分 >= H 是第一梯队
- 德分 >= H > 才分 >= L 是第二梯队
- H >= 德分 >= 才分 >= L 是第三梯队
- 德才分都过线的其他就是第四梯队
- 德才分有一项没过L的直接扔掉
按照题意 ,在读入过程中,只有当德分和才分都 >= L 才进行下一步判断。
学生信息用结构体存储,总体用vector进行存储。
读入数据完成后,进行排序,注意正确书写sort中的cmp函数。
#include<iostream>
#include<algorithm>
#include<vector>
#include<string>
using namespace std;
struct stu
{
string ID;
int d, c, score; //分别为德分、才分、总分
int flag; // 学生梯队编号 1-4
};
vector<stu>s;
bool cmp(stu a, stu b) {