알고리즘/JAVA
[JAVA] 백준 알고리즘 10825 : 국영수
초보개발자꽁쥐
2018. 9. 18. 15:16
반응형
국영수
문제 |
소스 |
import java.util.Iterator;
import java.util.Scanner;
import java.util.TreeSet;
class Student implements Comparable<Student> {
String name;
int k, e, m;
public Student(String name, int k, int e, int m) {
super();
this.name = name;
this.k = k;
this.e = e;
this.m = m;
}
@Override
public int compareTo(Student o) {
if (k == o.k) {
if(e == o.e) {
if (m == o.m) {
return name.compareTo(o.name);
} else {
return o.m-m;
}
} else {
return e-o.e;
}
} else {
return o.k-k;
}
}
@Override
public String toString() {
return name;
}
}
public class Main {
static int N;
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
N = sc.nextInt();
TreeSet<Student> ts = new TreeSet<Student>();
String name;
int k, e, m;
for (int i=0; i<N; i++) {
name = sc.next();
k = sc.nextInt();
e = sc.nextInt();
m = sc.nextInt();
ts.add(new Student(name, k, e, m));
}
Iterator<Student> itr = ts.iterator();
while(itr.hasNext()) {
System.out.println(itr.next().toString());
}
}
}
출처 |
반응형