https://www.acmicpc.net/problem/1946
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.Arrays;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws Exception{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int T = Integer.parseInt(br.readLine());
for(int i=0;i<T;i++){
int N = Integer.parseInt(br.readLine());
int[][] people = new int[N][2];
int count = 1; // 1등인 애는 무조건 뽑히기에
for(int j=0;j<N;j++){
StringTokenizer st = new StringTokenizer(br.readLine());
int paper = Integer.parseInt(st.nextToken());
int interview = Integer.parseInt(st.nextToken());
people[j][0] = paper;
people[j][1] = interview;
}
//sorting
Arrays.sort(people, (a, b) -> Integer.compare(a[0], b[0]));
// 판단
for(int j=N-1;j>0;j--){
if(people[j][1] - people[j-1][1] < 0) count++;
}
bw.write(String.valueOf(count));
bw.flush();
}
br.close();
bw.close();
}
}
=> 반대 방향으로 검사 + 값 갱신
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.Arrays;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws Exception{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int T = Integer.parseInt(br.readLine());
for(int i=0;i<T;i++){
int N = Integer.parseInt(br.readLine());
int[][] people = new int[N][2];
int count = 1; // 1등인 애는 무조건 뽑히기에
for(int j=0;j<N;j++){
StringTokenizer st = new StringTokenizer(br.readLine());
people[j][0] = Integer.parseInt(st.nextToken());
people[j][1] = Integer.parseInt(st.nextToken());
}
//sorting
Arrays.sort(people, (a, b) -> Integer.compare(a[0], b[0]));
// 판단
int max = people[0][1];
for(int j=1;j<N;j++) {
if (people[j][1] < max) {
count++;
max = people[j][1];
}
}
bw.write(String.valueOf(count));
bw.newLine();
}
bw.flush();
br.close();
bw.close();
}
}