본문 바로가기
알고리즘

Python - 신입 사원 (1946) 그리디

by jun.s.gi 2023. 6. 13.
728x90

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

 

1946번: 신입 사원

첫째 줄에는 테스트 케이스의 개수 T(1 ≤ T ≤ 20)가 주어진다. 각 테스트 케이스의 첫째 줄에 지원자의 숫자 N(1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개 줄에는 각각의 지원자의 서류심사 성

www.acmicpc.net

1. 정렬 후 1등 보다 서류심사 성적은 낮지만 면접 성적 순위가 1등보다 높다면 기준을 바꿔주고 1 카운트 합니다. 

 

import sys
t = int(sys.stdin.readline().strip())

for _ in range(t):
    n = int(sys.stdin.readline().strip())
    comp = []
    for __ in range(n):
        comp.append(list(map(int, sys.stdin.readline().strip().split())))
    
    comp.sort(key = lambda x : x[0])
    cnt = 1
    st = comp[0]
    for i in range(1, n):
        if st[1] > comp[i][1]:
            cnt += 1
            st = comp[i]
    print(cnt)
728x90