[백준/BOJ][Python] 1946번 신입 사원

Eunding·2024년 12월 11일

algorithm

목록 보기
71/110

1946번 신입 사원

https://www.acmicpc.net/problem/1946


아이디어

만약 나보다 서류 등수가 높다면 면접 등수는 내가 더 높아야 뽑힌다.
서류 순으로 정렬 후 서류 1등을 뽑는다.
서류 1등의 면접 등수를 min_value에 저장해두고 서류 2등부터 면접 등수를 비교한다. 이때 min_value에 저장된 등수보다 숫자가 더 작으면 서류는 얘보다 낮지만 면접은 높은 것이므로 카운트 한다.


코드

import sys
input = sys.stdin.readline

T = int(input())
for _ in range(T):
    n = int(input())
    rank = [list(map(int, input().split())) for _ in range(n)]
    rank.sort(key = lambda x : x[0]) # 서류 순 정렬

    cnt = 1 # 서류 1등
    min_value = rank[0][1] # 서류 1등의 면접 등수
    for i in range(1, n):
        if rank[i][1] < min_value: 
            min_value = rank[i][1]
            cnt += 1
    print(cnt)

0개의 댓글