백준 신입 사원
백준 신입 사원Permalink
코드
import java.io.*;
import java.util.Arrays;
import java.util.Comparator;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
for(int i = 0; i<n;i++){
int m = Integer.parseInt(br.readLine());
int[][] arr = new int[m][2];
int cnt = 1;
for(int j = 0; j<arr.length;j++){
StringTokenizer st = new StringTokenizer(br.readLine());
arr[j][0] = Integer.parseInt(st.nextToken());
arr[j][1] = Integer.parseInt(st.nextToken());
}
Arrays.sort(arr, new Comparator<int[]>() {
@Override
public int compare(int[] o1, int[] o2) {
return o1[0]-o2[0];
}
});
int temp = arr[0][1];
for(int j = 1; j<arr.length;j++){
if(temp>arr[j][1]){
temp = arr[j][1];
cnt++;
}
}
System.out.println(cnt);
}
}
}
설명
먼저 주의 할 점은 주어진 서류,면접 입력 값은 점수가 아닌 순위이다. 지원자의 서류 등수, 면접 등수 중 서류 순위를 오름 차순으로 정렬 후 면접 순위로 지원자가 선발이 될 수 있는지 확인한다. 비교를 할 때 가장 최근 채용된 지원자의 면접 순위보다 높은 지원자를 찾고 기준을 변경해준다.