https://www.acmicpc.net/problem/1946
1946번: 신입 사원
첫째 줄에는 테스트 케이스의 개수 T(1 ≤ T ≤ 20)가 주어진다. 각 테스트 케이스의 첫째 줄에 지원자의 숫자 N(1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개 줄에는 각각의 지원자의 서류심사 성
www.acmicpc.net
https://github.com/stellaluminary/Baekjoon
GitHub - stellaluminary/Baekjoon
Contribute to stellaluminary/Baekjoon development by creating an account on GitHub.
github.com
예제 1
지원자1 : (서류심사 성적 : 3등 , 면접심사 성적 : 2등)
지원자2 : (서류심사 성적 : 1등 , 면접심사 성적 : 4등)
지원자3 : (서류심사 성적 : 4등 , 면접심사 성적 : 1등)
지원자4 : (서류심사 성적 : 2등 , 면접심사 성적 : 3등)
지원자5 : (서류심사 성적 : 5등 , 면접심사 성적 : 5등)
정렬 시
지원자2 : (서류심사 성적 : 1등 , 면접심사 성적 : 4등)
지원자4 : (서류심사 성적 : 2등 , 면접심사 성적 : 3등)
지원자1 : (서류심사 성적 : 3등 , 면접심사 성적 : 2등)
지원자3 : (서류심사 성적 : 4등 , 면접심사 성적 : 1등)
지원자5 : (서류심사 성적 : 5등 , 면접심사 성적 : 5등)
서류심사 성적이 이미 성적 순으로 진행되었고 여기서 면접심사 성적이 좋은 경우를 지속해서 찾아 counting한다.
import sys
input = sys.stdin.readline
for i in range(int(input())):
n = int(input())
score = [list(map(int, input().split())) for _ in range(n)]
score.sort()
min_r = score[0][1]
cnt = 1
for i in range(n):
if score[i][1] < min_r:
cnt += 1
min_r = score[i][1]
print(cnt)