[백준] 1946 - 신입 사원
2024. 5. 22. 16:31ㆍPS/백준
728x90
문제 링크
https://www.acmicpc.net/problem/1946
느낀 점
문제 이해를 잘하는 것이 문제 풀이의 첫 단계라는 것을 느꼈고, 먼저 코드를 작성하기 전에 로직을 이해해야한다고 생각이 들었다. 처음에는 문제 조건이 점수라고 생각해서 조금 헤맸는데, 등수라는 것을 깨달았고, 그 후에 기준이 되는 사원을 기준으로 한 명씩 뽑으면 된다는 것을 깨달았다. 재밌는 문제!
import sys
T = int(sys.stdin.readline())
answer = []
for _ in range(T):
N = int(sys.stdin.readline())
people_list = []
for _ in range(N):
people_list.append(list(map(int, sys.stdin.readline().split())))
people_list = sorted(people_list, key=lambda x: (x[0], x[1]))
defacto = None
cnt = 0
for idx in range(len(people_list)):
if defacto is None:
defacto = people_list[idx]
cnt += 1
else:
if defacto[0] < people_list[idx][0] and defacto[1] < people_list[idx][1]:
continue
defacto = people_list[idx]
cnt += 1
answer.append(cnt)
for a in answer:
print(a)
'PS > 백준' 카테고리의 다른 글
[백준] 20117 - 호반우 상인의 이상한 품질 계산법 (0) | 2024.05.24 |
---|---|
[백준] 1107 - 리모컨 (0) | 2024.05.24 |
[백준] 1379 - 강의실 2 (0) | 2024.05.22 |
[백준] 25918 - 북극곰은 괄호를 찢어 (0) | 2024.05.15 |
[백준] 1374 - 강의실 (0) | 2024.05.14 |