```cpp
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
//思路,用类和结构体都能实现
//这里用类实现
class student
{
public:
student(string name, int yw, int ma, int eng)
{
this->m_name = name;
m_yw = yw;
m_ma = ma;
m_eng = eng;
m_sum = yw + ma + eng;
}
string m_name;
int m_yw;
int m_ma;
int m_eng;
int m_sum;
void display()
{
cout << this->m_name << ' ' << this->m_yw << ' ' << this->m_ma << ' ' << this->m_eng;
}
};
bool cmp(student &s1, student &s2)
{
return s1.m_sum < s2.m_sum;
}
int main()
{
int n;
cin >> n;
vector<student> s;
string name;
int y, m, e;
while(n--)
{
cin >> name >> y >> m >> e;
s.push_back(student(name, y, m, e));
}
sort(s.begin(), s.end(), cmp);
for (auto i: s)
{
if (i.m_sum == s[s.size()-1].m_sum)
{
i.display();
break;
}
}
return 0;
}
```
by yezhufenglv @ 2024-05-27 11:06:53
刚用IDE测试了一下,输出的不是最后一个,是中间的一个,
by yezhufenglv @ 2024-05-27 11:17:46