반응형
문제 이해
아이디어
코드
import java.io.*;
import java.util.*;
class Pair {
public double sum;
public int index;
public Pair() { }
public Pair(double sum, int index) {
this.sum = sum;
this.index = index;
}
}
public class Solution {
static String[] grade = { "A+", "A0", "A-", "B+", "B0", "B-", "C+", "C0", "C-", "D0" };
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st;
int T = Int(br.readLine());
for (int tc = 1; tc <= T; ++tc) {
LinkedList<Pair> student = new LinkedList<>();
st = new StringTokenizer(br.readLine(), " ");
int N = Int(st.nextToken());
int K = Int(st.nextToken());
for (int i = 0; i < N; ++i) {
st = new StringTokenizer(br.readLine(), " ");
int mid = Int(st.nextToken());
int fnl = Int(st.nextToken());
int hw = Int(st.nextToken());
double sum = (mid * 0.35d) + (fnl * 0.45d) + (hw * 0.2d);
student.offer(new Pair(sum, i + 1));
}
Collections.sort(student, new Comparator<Pair>() {
@Override
public int compare(Pair o1, Pair o2) {
return Double.compare(o2.sum, o1.sum);
}
});
int ratio =N/10;
int index =0;
boolean isFlag = false;
while(!isFlag) {
for(int i=0; i<ratio; ++i) {
if(student.peek().index == K) {
System.out.println("#"+tc+" "+grade[index]);
isFlag = true;
break;
}
student.poll();
}
index++;
}
}
}
static int Int(String s) {
return Integer.parseInt(s);
}
}
집사는개발자가되고파
choppadontbiteme.tistory.com
반응형
'Algorithm > SWEA' 카테고리의 다른 글
[SWEA] 1986. 지그재그 숫자 D2 JAVA (0) | 2021.03.26 |
---|---|
[SWEA] 1984. 중간 평균값 구하기 D2 JAVA (0) | 2021.03.26 |
[SWEA] 1979. 어디에 단어가 들어갈 수 있을까 D2 JAVA (0) | 2021.03.26 |
[SWEA] 1976. 시간 덧셈 D2 JAVA (0) | 2021.03.26 |
[SWEA] 1974. 스도쿠 검증 D2 JAVA (0) | 2021.03.26 |