PAT1004成績排名(java實現)
題目描述:
讀入 n(>0)名學生的姓名、學號、成績,分別輸出成績最高和成績最低學生的姓名和學號。
- 輸入格式:
每個測試輸入包含 1 個測試用例,格式為
第 1 行:正整數 n
第 2 行:第 1 個學生的姓名 學號 成績
第 3 行:第 2 個學生的姓名 學號 成績
... ... ...
第 n+1 行:第 n 個學生的姓名 學號 成績
其中姓名和學號均為不超過 10 個字元的字串,成績為 0 到 100 之間的一個整數,這裡保證在一組測試用例中沒有兩個學生的成績是相同的。
- 輸出格式:
對每個測試用例輸出 2 行,第 1 行是成績最高學生的姓名和學號,第 2 行是成績最低學生的姓名和學號,字串間有 1 空格。
解題思路:這道題只要能對輸入的資訊按成績進行排序就好了,所以只需要重寫java的Compare方法使其對學生的成績進行比較之後呼叫collection中的sort方法進行排序,最後輸出最大最小的學生資訊即可
程式:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(bf.readLine());
ArrayList<String> s = new ArrayList<String>();
for (int i = 0; i < n; i++) {
s.add(bf.readLine());
}
//System.out.println("排序前"+s);
Collections.sort(s,new Comparator<String>() {
public int compare(String a,String b){
String[] a1 = a.split(" ");
String[] b1 = b.split(" ");
int aa = Integer.parseInt(a1[2]);
int bb = Integer.parseInt(b1[2]);
//System.out.println("排序字串:" + a1[2] + "," + b1[2]);
if (aa>bb) {
return 1;
}else {
return -1;
}
}
});
//System.out.println("排序後"+s);
String[] minTemp = s.get(0).split(" ");
String[] maxTemp = s.get(s.size()-1).split(" ");
System.out.println(maxTemp[0]+" "+maxTemp[1]);
System.out.println(minTemp[0]+" "+minTemp[1]);
}
}
相關文章
- excel按成績高低排名次 excel成績表怎麼排名次Excel
- jeefast實現科目成績查詢AST
- PAT1077互評成績計算(java實現)Java
- 排序公式excel怎麼設定排名 打亂的成績單怎麼排名排序公式Excel
- 用case實現成績優良差的判斷
- 使用case實現成績優良差的判斷
- Java+Eclipse+MySQL+Swing實現學生會考成績管理系統(免費完整專案)JavaEclipseMySql
- 成績單:Windows 7 - XP模式成績不及格Windows模式
- 21.C++實現計算八個學生的平均成績C++
- excel排序怎麼排名次由小到大 excel怎麼按成績降序排列Excel排序
- PAT乙級1004 成績排名 (20分)(C語言版)及解析C語言
- MySQL排名函式實現MySql函式
- redis有序集合實現實時排名Redis
- 把字串轉換成整數(Java實現)字串Java
- 組內排名的實現方法
- GUI成績檢測程式碼GUI
- 【shell 】 使用 shell 計算成績
- 排名Top 16的Java實用類庫Java
- 學生成績錄入系統,需要判斷成績格式合格,使用throw彈出,最後並列印全班成績單
- java實現將excel表格資料解析成JSONArrayJavaExcelJSON
- Java Swing+Mysql+beautyEye(介面優美)學校成績管理系統(管理員/學生/教師,資訊管理/選課管理/成績管理)JavaMySql
- 輸入10個學生5門課的成績,分別用函式實現下列功能:函式
- 成績轉換 HDU - 2004
- HDU 2004 成績轉換
- C++實現學生成績資訊登記表C++
- Java中利用迴圈來實現階乘、99乘法表、水仙花數、成績的接收和迴圈的小遊戲的案例Java遊戲
- java績效管理系統Java
- SOLIDWORKS提升 SAE賽車隊成績Solid
- Mysql 獲取成績排序後的名次MySql排序
- 想要永生?虛擬現實中實現永生或成現實
- 德國經濟研究院:研究發現音樂或能提高學習成績
- python運用——成績等級評定Python
- 團隊成員分工及績效評估
- 微信曬3年成績單叫板阿里阿里
- Redis實現排名功能的示例程式碼CRKCRedis
- python mysql實現學生成績管理系統蠖脲PythonMySql
- 美國國家經濟研究局:研究發現顏值與學習成績成正比
- SAAS雲平臺 成現實