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.pswp.cn/news/455957.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/455957.shtml
英文地址,請注明出處:http://en.pswp.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…