프로그래머스 단속카메라

wook2·2021년 7월 4일
0

알고리즘

목록 보기
21/117

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
profile
꾸준히 공부하자

0개의 댓글