Notice
Recent Posts
문제 풀이 및 개발 공간
[백준] 10825번 국영수 (silver 4 본문
import java.io.*;
import java.util.*;
class Point{
String name;
int k;
int e;
int m;
public Point(String name, int k,int e,int m){
this.name=name;
this.k=k;
this.e=e;
this.m=m;
}
}
public class Main{
public static void main(String[]args) throws IOException{
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(System.out));
StringTokenizer st;
int n=Integer.valueOf(br.readLine());
Point[] num=new Point[n];
for(int i=0; i<n; i++){
st=new StringTokenizer(br.readLine());
num[i]=new Point(st.nextToken(), Integer.valueOf(st.nextToken()), Integer.valueOf(st.nextToken()), Integer.valueOf(st.nextToken()) );
}
Arrays.sort(num, new Comparator<Point>(){
public int compare(Point o1, Point o2){
if(o1.k==o2.k && o2.e==o1.e){
if(o1.m==o2.m){
return o1.name.compareTo(o2.name);
}
return -(o1.m-o2.m);
}
else if(o1.k==o2.k){
return (o1.e-o2.e);
}
else{
return -(o1.k-o2.k);
}
}
});
for(Point e:num){
bw.write(e.name+"\n");
}
bw.flush();
}
}
'백준공부 > java' 카테고리의 다른 글
[백준] 11060번 점프점프 (silver 2 (2) | 2023.10.29 |
---|---|
[백준] 2012번 등수매기기 (silver 3 (0) | 2023.10.29 |
[백준] 1504번 특정한 최단 경로 (gold 4 (0) | 2023.10.22 |
[백준] 1753번 최단경로 (gold 4 (1) | 2023.10.22 |
[백준] 1916번 최소비용 구하기 (gold 5 (2) | 2023.10.21 |