728x90
https://www.acmicpc.net/problem/1946
1946번: 신입 사원
첫째 줄에는 테스트 케이스의 개수 T(1 ≤ T ≤ 20)가 주어진다. 각 테스트 케이스의 첫째 줄에 지원자의 숫자 N(1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개 줄에는 각각의 지원자의 서류심사 성
www.acmicpc.net
문제를 이해하는 시간만 한시간 정도 걸렸던 것 같다.
당연히 점수인 줄 알았는 데, 너무 이해가 되지 않아 질문게시판 찾아보니까 순위라고 하더라....
무조건 한 명 이상은 뽑을 것이니 처음 result를 1로 해준다.
그러고는 그냥 단순히 앞 순위로 정렬해주고, 반복문으로 순위를 점점 올려가며 가능한 친구들만 받고 result를 +1해준다.
import sys
for i in range(int(sys.stdin.readline().strip())):
candidate = sorted([list(map(int, sys.stdin.readline().split())) for _ in range(int(sys.stdin.readline().strip()))])
top = 0
result = 1
for t in range(1, len(candidate)):
if candidate[t][1] < candidate[top][1]:
top = t
result += 1
print(result)
'알고리즘 > 그리디' 카테고리의 다른 글
백준 1339 단어 수학 (Python) (0) | 2024.02.02 |
---|---|
백준 1715 카드 정렬하기 (Python) (1) | 2024.01.31 |
백준 16953 A → B (Python) (1) | 2024.01.31 |
백준 1931 회의실 배정 (Python) (0) | 2024.01.30 |
백준 1213 팰린드롬 만들기 (Python) (0) | 2024.01.30 |