📝문제
💡풀이
우선 서류 심사를 기준으로 오름차순을 한 후
1 4
2 5
3 6
4 2
5 7
6 1
7 3
서류 1등은 무조건 통과니까
서류 2등부터 면접 성적 순위가 이전순위의 최솟값보다 크다면 인원수를 줄여주는 방식을 채택하였다.
1 4
2 5 최솟값: 4 => 5가 4보다 큼
3 6 최솟값: 4 => 6이 4보다 큼
4 2
5 7 최솟값: 2 => 7이 2보다 큼
6 1
7 3 최솟값:1 => 3이 1보다 큼
면접 성적 순위는 숫자가 작은 것이 비교대상이 된다.
import java.util.*;
import java.io.*;
class Main{
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
// 서류심사 성적과 면접시험 성적 중 적어도 하나가 다른 지원자보다 떨어지지 않아야 함
int T = Integer.parseInt(br.readLine());
StringBuilder sb = new StringBuilder();
for(int i = 0; i < T; i++){
int N = Integer.parseInt(br.readLine());
int answer = N;
int[][] applicant = new int[N][2];
for(int j = 0; j < N; j++){
StringTokenizer st = new StringTokenizer(br.readLine());
applicant[j][0] = Integer.parseInt(st.nextToken());//서류심사 성적 순위
applicant[j][1] = Integer.parseInt(st.nextToken());//면접성적 순위
}
Arrays.sort(applicant, Comparator.comparingInt(a->a[0]));
int min = applicant[0][1];
for(int j = 1; j < N; j++){
if(applicant[j][1] > min){
answer--;
}
min = Math.min(min, applicant[j][1]);
}
sb.append(answer).append("\n");
}
System.out.println(sb);
}
}
🤔Review
오랜만에 다른 풀이 참고없이 한 번에 맞춘 문제다. 이런 문제만 코테에 나왔으면..^^
'Algorithm' 카테고리의 다른 글
[Algorithm] 99클럽 코테 스터디 20일차 TIL | 백준_최소 회의실 개수(19598번) (5) | 2025.02.14 |
---|---|
[Algorithm] 99클럽 코테 스터디 18일차 TIL | 백준_맥주 축제(17503번) (0) | 2025.02.12 |
[Algorithm] 99클럽 코테 스터디 17일차 TIL | 백준_ATM(11399번) (0) | 2025.02.11 |
[Algorithm] 99클럽 코테 스터디 16일차 TIL | 백준_고양이는 많을수록 좋다(27961번) (0) | 2025.02.10 |
[Algorithm] 99클럽 코테 스터디 15일차 TIL | 백준_치킨 배달(15686번) (0) | 2025.02.07 |