題目描述 很多資訊學選手,在很多領域做出了非常大的貢獻,為國家科技的發展出了很多力,有不少還是開領了科技的先河。葉老師這邊帶過競賽的學生也有不少考上了清華北大,他們將會繼續深造,以便發揮出自己的才能。在這些選手實現為科技進步貢獻的同時,他們也實現了自我價值。比如: 清華大學畢業的樓教主 身價百億 浙江理工大學畢業的王學集、陳燎罕 IPO 900億 浙江理工大學畢業的章同學 畢業2年 年薪150萬 … 現在葉老師想統計下這些同學的身價、行業發展潛力,並希望你幫忙從高到低排個序,排序規則: 1 按照身價從高到低排序 2 如果身價相同,按照行業發展潛力從高到低排序 3 如果身價、行業發展潛力都相同,按照輸入的序號從小到大排序
輸入 第一行輸入一個整數n ( 1 <= n <= 100) 之後n行,每行輸入姓名(最多不超過20個字元)、身價(整數)、行業發展潛力(整數) 輸出 輸出n行,為按規則排序後的n個,每行輸出序號、姓名、身價、行業發展潛力、未來身價(未來身價=身價*行業發展潛力)中間用空格隔開 樣例輸入 Copy 3 loujiaozhu 100 12 wangxueji 900 3 chenliaohan 900 3 樣例輸出 Copy 2 wangxueji 900 3 2700 3 chenliaohan 900 3 2700 1 loujiaozhu 100 12 1200
import java.util.LinkedList;
import java.util.List;
import java.util.Scanner;
public class Main{
static class Per{
public Per(int no, String name, int pr,int f){
this.no = no;
this.name=name;
this.pr=pr;
this.f=f;
}
public int no;
public String name;
public int pr;
public int f;
}
public static void main(String args[]){
int n;
Scanner sc = new Scanner(System.in);
n = sc.nextInt();
List<Per> list = new LinkedList<Per>();
for(int i=1;i<n+1;i++){
Per per = new Per(i,(String)sc.next(),sc.nextInt(),sc.nextInt());
list.add(per);
}
list.sort((p1,p2) -> {
if(p1.pr > p2.pr || (p1.pr == p2.pr && p1.f > p2.f) || (p1.pr == p2.pr && p1.f == p2.f && p1.no < p2.no)){
return -1;
}
return 1;
});
for(Per p : list){
System.out.println(p.no + " " +p.name + " " + p.pr + " " +p.f + " " + p.pr*p.f);
}
}
}