众所周知,zr学姐美丽动人,吸引了众多迷弟。迷弟那么多,他都快不好意思了!于是她打算请迷弟们喝奶茶。但是奶茶不够分啊!于是zr学姐想出了一个办法,把迷弟们的成绩搜集起来,排个序,成绩好的优先,嘿嘿。如果两个人成绩一样,就按照字典序的顺序进行排序。zr学姐去买奶茶了,你能帮她完成这个任务吗?
Input
第一行一个数字n(1 ≤ n ≤ 20)表示人数。 接下来n行每行一个字符串s(1 ≤ len(s) ≤ 20)和一个数字k(0 ≤ k ≤ 100),表示迷弟的名字和成绩。(字符串仅包含小写字母)
Output
输出排序之后的结果,每个字符串一行
代码:
#include<iostream>
#include<string>
#include<algorithm>
using namespace std;
struct people
{
string name;
int score;
bool operator<(const people& that) const
{
if(score==that.score )
{
return name<that.name ;
}
return score>that.score;
}
};
people student[107];
int main()
{
int n;
cin>>n;
for(int i=0;i<n;i++)
{
cin>>student[i].name>>student[i].score;
}
sort(student,student+n);
for(int i=0;i<n;i++)
{
cout<<student[i].name<<endl;
}
return 0;
}