news 2026/5/6 21:26:38

3375.成绩排序

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
3375.成绩排序

3375.成绩排序

⭐️难度:简单
⭐️类型:排序

📖题目:题目链接
给定学生的成绩单,成绩单中包含每个学生的姓名和分数,请按照要求将成绩单按成绩从高到低或从低到高的顺序进行重新排列。

对于成绩相同的学生,无论以哪种顺序排列,都要按照原始成绩单中靠前的学生排列在前的规则处理。

输入格式
第一行包含整数 N,表示学生个数。
第二行包含一个整数 0 或 1,表示排序规则,
0表示从高到低,
1表示从低到高。

接下来 N 行,每行描述一个学生的信息,包含一个长度不超过 10的小写字母构成的字符串表示姓名以及一个范围在 0∼100的整数表示分数。

输出格式
输出重新排序后的成绩单。
每行输出一个学生的姓名和成绩,用单个空格隔开。

🌟思路:
定义两个compare函数,判断要进行的排序是升序还是降序,从而传递不同的参数进sort;
难点是sort是不稳定排序,需要通过一个seq变量的帮助,把sort函数改成稳定排序

📚题解:

#define_CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<string.h>#include<vector>// vector不需要.h#include<list>#include<set>// // 可以用 set 和 multiset#include<unordered_set>// 可以用 unordered_set 和 unordered_multimap#include<map>// 可以用 map 和 multimap#include<unordered_map>// 可以用 unordered_map 和 unordered_multimap#include<algorithm>usingnamespacestd;structStudent{charname[10];intscore;intseq;// 用来实现稳定排序};boolcompare0(Student lhs,Student rhs){// 实现降序if(lhs.score>rhs.score){returntrue;}elseif(lhs.score==rhs.score&&lhs.seq<rhs.seq){// 成绩相等时,序号由低到高排序returntrue;}else{returnfalse;}}boolcompare1(Student lhs,Student rhs){// 实现升序if(lhs.score<rhs.score){returntrue;}elseif(lhs.score==rhs.score&&lhs.seq<rhs.seq){// 成绩相等时,序号由低到高排序returntrue;}else{returnfalse;}}intmain(){intn;scanf("%d",&n);vector<Student>vec(n);intflag;scanf("%d",&flag);// 0降序,1升序for(inti=0;i<n;i++){scanf("%s%d",vec[i].name,&vec[i].score);vec[i].seq=i;}if(flag==0){sort(vec.begin(),vec.end(),compare0);// 实现升序}else{sort(vec.begin(),vec.end(),compare1);// 实现降序}for(inti=0;i<n;i++){printf("%s %d\n",vec[i].name,vec[i].score);}return0;}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/3 16:20:54

Java计算机毕设之基于springboot+bs架构的浙江艾艺塑业设计公司网站设计与实现(完整前后端代码+说明文档+LW,调试定制等)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/5/3 8:17:49

Java毕设选题推荐:基于springboot+bs架构的城市公交查询系统设计与实现公交查询、热门线路、公告【附源码、mysql、文档、调试+代码讲解+全bao等】

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/5/3 16:22:11

第一次用AI写论文?照着这个流程做AI率稳降到15%以下

第一次用AI写论文&#xff0c;最容易犯的错就是&#xff1a;写完直接交。 结果AI率80%&#xff0c;被打回来重改。 其实用AI写论文没问题&#xff0c;关键是要会处理。今天分享一套完整流程&#xff0c;照着做能把AI率控制在15%以下&#xff0c;而且不用花太多时间。 为什么A…

作者头像 李华
网站建设 2026/5/1 0:48:40

程序员的职业生涯规划:适应与转型

程序员的职业生涯规划:适应与转型 关键词:程序员、职业生涯规划、适应、转型、技术发展 摘要:本文聚焦于程序员的职业生涯规划,深入探讨在快速变化的技术环境下,程序员如何适应行业发展并进行有效的转型。文章从背景介绍入手,阐述了目的、预期读者等内容;接着详细分析了…

作者头像 李华
网站建设 2026/5/1 7:58:20

[特殊字符]_微服务架构下的性能调优实战[20260131144150]

作为一名经历过多个微服务架构项目的工程师&#xff0c;我深知在分布式环境下进行性能调优的复杂性。微服务架构虽然提供了良好的可扩展性和灵活性&#xff0c;但也带来了新的性能挑战。今天我要分享的是在微服务架构下进行性能调优的实战经验。 &#x1f4a1; 微服务架构的性…

作者头像 李华