思路
- 按照题目要求对同一个学生科目成绩进行降序排序 对不同学生学号进行升序排序
- 根据学号的不同,对成绩数组进行遍历
代码
class Solution {
public:
static bool cmp(vector<int>& a, vector<int>& b)
{
if (a[0] == b[0])
return a[1] > b[1];
else
return a[0] < b[0];
}
vector<vector<int>> highFive(vector<vector<int>>& items)
{
vector<vector<int>> res;
sort(items.begin(), items.end(), cmp);
int idx = 0;
for (int i = 0; i < items.size(); i++)
{
if (items[i][0] != idx)
{
idx = items[i][0];
int p = (items[i][1] + items[i + 1][1] + items[i + 2][1] + items[i + 3][1] + items[i + 4][1]) / 5;
res.push_back({ idx,p });
}
}
return res;
}
};