1028. List Sorting (25)

题目链接:http://www.patest.cn/contests/pat-a-practise/1028

题目:

1028. List Sorting (25)

时间限制
200 ms
内存限制
65536 kB
代码长度限制
16000 B
判题程序
Standard
作者
CHEN, Yue

Excel can sort records according to any column. Now you are supposed to imitate this function.

Input

Each input file contains one test case. For each case, the first line contains two integers N (<=100000) and C, where N is the number of records and C is the column that you are supposed to sort the records with. Then N lines follow, each contains a record of a student. A student's record consists of his or her distinct ID (a 6-digit number), name (a string with no more than 8 characters without space), and grade (an integer between 0 and 100, inclusive).

Output

For each test case, output the sorting result in N lines. That is, if C = 1 then the records must be sorted in increasing order according to ID's; if C = 2 then the records must be sorted in non-decreasing order according to names; and if C = 3 then the records must be sorted in non-decreasing order according to grades. If there are several students who have the same name or grade, they must be sorted according to their ID's in increasing order.

Sample Input 1
3 1
000007 James 85
000010 Amy 90
000001 Zoe 60
Sample Output 1
000001 Zoe 60
000007 James 85
000010 Amy 90
Sample Input 2
4 2
000007 James 85
000010 Amy 90
000001 Zoe 60
000002 James 98
Sample Output 2
000010 Amy 90
000002 James 98
000007 James 85
000001 Zoe 60
Sample Input 3
4 3
000007 James 85
000010 Amy 90
000001 Zoe 60
000002 James 90
Sample Output 3
000001 Zoe 60
000007 James 85
000002 James 90
000010 Amy 90

分析:

接收数字来确定排序的方案,写好结构体和排序就OK,难度不大

AC代码:

#include<stdio.h>
#include<vector>
#include<string.h>
#include<algorithm>
using namespace std;
struct Student{char ID[7];char name[9];int grade;
};
bool cmp1(Student A, Student B){//依照学号排序return strcmp(A.ID, B.ID) < 0;
}
bool cmp2(Student A, Student  B){//依照名字排序。再依照学号排序if (strcmp(A.name, B.name) != 0)return strcmp(A.name, B.name) < 0;else return strcmp(A.ID, B.ID) < 0;
}
bool cmp3(Student A, Student B){//依照分数排序,再依照学号排序if (A.grade != B.grade)return A.grade < B.grade;else return strcmp(A.ID, B.ID) < 0;
}
vector<Student>V;
int main(void){//freopen("F://Temp/input.txt", "r", stdin);int n, k;while (scanf("%d", &n) != EOF){scanf("%d", &k);for (int i = 0; i < n; i++){Student tmp;scanf("%s%s%d", tmp.ID, tmp.name, &tmp.grade);V.push_back(tmp);}if (k == 1)sort(V.begin(), V.end(), cmp1);if (k == 2)sort(V.begin(), V.end(), cmp2);if (k == 3)sort(V.begin(), V.end(), cmp3);for (int i = 0; i < n; i++){printf("%s %s %d\n", V[i].ID, V[i].name, V[i].grade);}}return 0;
}


截图:


——Apie陈小旭

转载于:https://www.cnblogs.com/yfceshi/p/6732793.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/455957.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【后端开发】分析抖音后台架构

最后分享抖音美女爬虫 https://github.com/wangshub/Douyin-Bot

看日本如何用IoT打造智能工厂

在技术、市场、政策等方面因素的推动下&#xff0c;全球正在掀起一股智能制造的热潮&#xff0c;越来越多的国家大力推进智能工厂的建设。有机构预测&#xff0c;未来五年智能工厂领域的投资将促进生产力增长27%&#xff0c;预计到2022年年底&#xff0c;21%的工厂将会成为智能…

HTML标题

HTML标题 通过 <h1>、<h2>、<h3>、<h4>、<h5>、<h6>,标签可以在网页上定义6种级别的标题。 6种级别的标题表示文档的6级目录层级关系&#xff0c;比如说&#xff1a; <h1>用作主标题&#xff08;最重要的&#xff09;&#xff0c;其…

264中 POC的计算方法

作者&#xff1a;jogh.264 参考代码 JM86 一参数说明 这一节阐述的是encoder.cfg 中的参数对编码过程的影响 要注意的是encoder.cfg 中的参数跟input 结构体中的变量是一一对应的 ? StartFrame&#xff1a;从视频流的第几帧开始编码 ? FramesToBeEncoded&#xff1a;指明…

c++ 测试串口速率_纳米软件案例之电流控制测试系统

项目背景西安某机电研究所电流控制测试系统软件需要用记录仪设置采样速率对电流数据进行采集&#xff0c;并能够进行数据实时显示、保存。为更好的分析实验现象&#xff0c;需要历史测试数据可查询并显示。目前采用的传统的手动测试&#xff0c;测试操作繁杂。数据保存困难&…

【Sublime】使用 Sublime 工具时运行python文件

使用 Sublime 工具时报Decode error - output not utf-8解决办法 在菜单中tools中第四项编译系统 内最后一项增添新的编译系统 自动新建 Python.sublime-build文件,并添加"encoding":"cp936"这一行,保存即可 使用python2 则注释encoding改为utf-8 {&quo…

智慧城市这份试卷 国外城市怎么答题?

在近五年&#xff0c;国内智慧城市建设的热潮一直增无减。据媒体梳理&#xff0c;透过各地政府工作报告和“十三五”规划发现&#xff0c;我国95%的副省级城市、76%的地级城市&#xff0c;总计超过500个城市&#xff0c;均在政府工作报告或“十三五”规划中明确提出&#xff0c…

HTML段落,换行,字符实体

HTML段落,换行,字符实体 html段落 <p>标签定义一个文本段落&#xff0c;一个段落含有默认的上下间距&#xff0c;段落之间会用这种默认间距隔开&#xff0c;代码如下&#xff1a; <!DOCTYPE html> <html> <head><meta charset"UTF-8"&g…

【python】有意思的python小项目GitHub地址汇总

Licence_plate_recognize 车牌识别 Djang-Stu 基于python的Django框架学生信息管理系统 sklearn-machine-learning 数据分析-机器学习-深度学习【个人学习笔记】 movie_analysis 对电影影评分析生成词云 spider_doubanTOP 爬取豆瓣电影top250/爬取豆瓣图书top250 yuyin_re…

CBP详解

cbp一共6bit&#xff0c;高2bit表示cbpc(2&#xff1a;cb、cr中至少一个4x4块的AC系数不全为0&#xff1b;1&#xff1a;cb、cr中至少一个2x2的DC系数不全为0&#xff1b;0&#xff1a;所有色度系数全0&#xff09; 低4bit分别表示4个8x8亮度块&#xff0c;其中从最低一位开始的…

R 包的安装,使用,更新

R包的使用方法 包就是提供了种类繁多的函数&#xff0c;当然还有它的一些数据集&#xff0c;可以使用这些函数来操作这些数据集&#xff0c;来学习使用。 library()&#xff0c;当前的工作环境里&#xff0c;可以使用的包 包的帮助文档&#xff1a;help(package"包名"…

nginx 电子书_13本免费的电子书,拿走,不谢

傻白甜程序员13本电子书的清单01《PyTorch官方教程中文版》傻白甜程序员中&#xff0c;后台回复“pytorch”获取02《Think Python》傻白甜程序员中&#xff0c;后台回复“ThinkPython”获取03《走向分布式》傻白甜程序员中&#xff0c;后台回复“分布式”获取04《Nginx教程&…

Redis数据类型:字符串

2019独角兽企业重金招聘Python工程师标准>>> 概要 字符串类型是Redis最基本的数据类型&#xff0c;能够存储任何形式的字符串&#xff0c;单个健值最大能够存放512兆的数据&#xff0c;据传将来会放开512M的限制。 命令 设置值&#xff1a;set foo bar 获取值&#…

HTML块,含样式的标签

HTML块,含样式的标签 html块 div标签 块元素&#xff0c;表示一块内容&#xff0c;没有具体的语义。span标签 行内元素&#xff0c;表示一行中的一小段内容&#xff0c;没有具体的语义。 含样式和语义的标签 em标签 行内元素&#xff0c;表示语气中的强调词i标签 行内元素…

【docker】docker虚拟容器的使用大全

Docker容器详解 Docker是基于Go语言开发的开源应用容器引擎&#xff0c;遵从Apache Licence 2.0协议&#xff0c;可以让开发者打包应用以及应用的依赖包到一个可移植的容器中&#xff0c;然后发布到各种发行版本的Linux系统上。 Docker简介 软件开发中最为麻烦的事情可能就是…

【树莓派】修改树莓派盒子MAC地址

用树莓派盒子&#xff0c;在某些客户方实施过程中&#xff0c;不同客户的网络环境对树莓派盒子的要求不同&#xff0c;网络管理配置要求MAC地址和IP绑定。 一种情况下&#xff0c;查询盒子的MAC地址&#xff0c;添加到网络管理的路由规则中即可&#xff1b; 另一种情况下&#…

编程随想 关系图_IT什么岗位比较好找工作?一张金字塔图就能明白

IT(Internet Technology)互联网技术是指在计算机技术的基础上开发建立的一种信息技术。IT行业这些年一直很火爆&#xff0c; 对于IT就业岗位的选择一直也都是热门话题。一、IT人才总体供需金字塔型人才需求和市场供应关系图&#xff1a;人才供需图一般IT 行业供需关系可以比喻为…

诺基亚收购了阿朗:那与 TCL 的“阿尔卡特”品牌授权协议到期后咱办?

在被诺基亚收购之后&#xff0c;“阿尔卡特-朗讯”的牌子算是被这家芬兰公司收入囊中。尴尬的是&#xff0c;TCL 很早就获得了“阿尔卡特”这个智能手机品牌的授权。当然&#xff0c;对于因为错抱了微软 Windows Phone 这条大腿、以致于多年后再借着 HMD Global 重返 Android 智…

【Django】django使用原生SQL的方法(附加说说为什么ORM上不了大台面)

执行自定义SQL语言&#xff1a; from django.db import connection ​ cursorconnection.cursor() ​ # 插入操作 cursor.execute("insert into hello_author(name) values(传说中的申小五)") ​ # 更新操作 cursor.execute("update hello_author set nameabc w…

[熵编码] 指数哥伦布编码

规定语法元素的编解码模式的描述符如下&#xff1a;比特串&#xff1a;b(8):任意形式的8比特字节&#xff08;就是为了说明语法元素是为8个比特&#xff0c;没有语法上的含义&#xff09;f(n):n位固定模式比特串&#xff08;其值固定&#xff0c;如forbidden_zero_bit的值恒为0…