https://programmers.co.kr/learn/courses/30/lessons/42884
문제를 보고 이전에 프로그래머스에서 풀었던 문제가 하나 생각났었다.
https://velog.io/@wook2pp/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%A8%B8%EC%8A%A4-%EC%B6%94%EC%84%9D%ED%8A%B8%EB%9E%98%ED%94%BD
프로그래머스에 있는 추석트래픽이란 문제인데, 이 문제도 어떤 임계점은 일의 시작의 처음이나 마지막이었다.
이 문제와 마찬가지로 이번 문제도 단속카메라가 최소한으로 놓이기 위해서는 제일 처음으로 차가 나가는 지점에 설치하는것이 가장 최소한으로 놓는 방법이다.
그래서 나가는 시점을 기준으로 정렬하고 가장 처음으로 나가는 지점에 설치를 해놓고 그 카메라에 걸리는 자동차를 제외해주었다.
from collections import deque
def solution(routes):
answer = 0
routes.sort(key = lambda x: x[1]) ## 진출시점을 기준으로 정렬
queue = deque(routes)
while queue:
answer += 1
start,end = queue.popleft()
while len(queue) > 0 and queue[0][0] <= end and queue[0][1] >= end:
queue.popleft()
return answer