成绩排序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;
}
相关推荐
Highcharts.js1 小时前
缺失数据可视化图表开发实战|Highcharts创建人员出生统计面积图表示例
开发语言·前端·javascript·信息可视化·highcharts·图表开发
测试员周周5 小时前
【Appium 系列】第16节-WebView-H5上下文切换 — 混合应用的自动化难点
运维·开发语言·人工智能·功能测试·appium·自动化·测试用例
杜子不疼.8 小时前
【C++ AI 大模型接入 SDK】 - DeepSeek 模型接入(上)
开发语言·c++·chatgpt
加号38 小时前
【C#】 串口通信技术深度解析及实现
开发语言·c#
sycmancia9 小时前
Qt——编辑交互功能的实现
开发语言·qt
石山代码9 小时前
C++ 内存分区 堆区
java·开发语言·c++
心中有国也有家9 小时前
cann-recipes-infer:昇腾 NPU 推理的“菜谱集合”
经验分享·笔记·学习·算法
绝知此事9 小时前
【算法突围 01】线性结构与哈希表:后端开发的收纳术
java·数据结构·算法·面试·jdk·散列表
无风听海9 小时前
C# 隐式转换深度解析
java·开发语言·c#
碧海银沙音频科技研究院9 小时前
通话AEC与语音识别AEC的软硬回采链路
深度学习·算法·语音识别