成绩排序c++

说明

给出了班里某门课程的成绩单,请你按成绩从高到低对成绩单排序输出,如果有相同分数则名字字典序小的在前。

输入格式

第一行为nn(0<n<200<n<20),表示班里的学生数目;

接下来的nn行,每行为每个学生的名字和他的成绩,中间用单个空格隔开。名字只包含字母且长度不超过2020,成绩为一个不大于100100的非负整数。

输出格式

把成绩单按分数从高到低的顺序进行排序并输出,每行包含名字和分数两项,之间有一个空格。

样例

输入数据 1

复制代码
4
Kitty 80
Hanmeimei 90
Joey 92
Tim 28

Copy

输出数据 1

复制代码
Joey 92
Hanmeimei 90
Kitty 80
Tim 28

代码

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
struct s{
	string m;
	int f;
}a[21];
bool d(s b,s c){
	if(c.f==b.f)return b.m<c.m;
	return b.f>c.f;
}
int main(){
	int n;
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>a[i].m>>a[i].f;
	}
	sort(a+1,a+n+1,d);
	for(int i=1;i<=n;i++){
		cout<<a[i].m<<" "<<a[i].f<<endl;
	}
	return 0;
}
相关推荐
千码君201613 分钟前
Go语言:解决 “package xxx is not in std”的思路
开发语言·后端·golang
Ypuyu18 分钟前
【GoLang】【框架学习】【GORM】4. 使用 BeforeUpdate hook 操作时,出现反射报错
开发语言·学习·golang
ZIM学编程1 小时前
「学长有话说」作为一个大三学长,我想对大一计算机专业学生说这些!
java·c语言·数据结构·c++·python·学习·php
maizeman1261 小时前
用R语言生成指定品种与对照的一元回归直线(含置信区间)
开发语言·回归·r语言·置信区间·品种测试
代码AC不AC1 小时前
【C++】哈希表封装实现 unordered_map 和 unordered_set
c++·unordered_map·unordered_set·哈希表封装
脚踏实地的大梦想家1 小时前
【Go】P17 Go语言并发编程核心:深入理解 Goroutine (从入门到实战)
java·开发语言·golang
贝塔实验室1 小时前
LDPC 码的构造方法
算法·fpga开发·硬件工程·动态规划·信息与通信·信号处理·基带工程
初学小白...1 小时前
线程同步机制及三大不安全案例
java·开发语言·jvm
Greedy Alg1 小时前
LeetCode 287. 寻找重复数
算法
2501_938791222 小时前
逻辑回归与KNN在低维与高维数据上的分类性能差异研究
算法·分类·逻辑回归