우당탕탕 개발일지
[그리디] 프로그래머스 level 3 단속카메라 (Python 파이썬) ⭐ 본문
💡문제 링크
결국 마지막까지 못풀고 다른 사람 풀이 본 문제..
💡문제 분석 요약
routes 리스트 안의 원소는 [차량의 고속도로 진입 지점, 차량의 진출 지점]으로 구성되어 있다.
예를 들어 원소가 [-5, -3]이면 차량이 -5 지점에서 고속도로에 들어온 뒤 -3에서 고속도로를 나갔다는 뜻.
모든 차량이 한 번은 단속용 카메라를 만나도록 하려면
최소 몇 대의 카메라를 설치해야 하는지 return하는 함수 작성
💡알고리즘 설계
1. 진출 지점 기준으로 정렬
2. 앞뒤 겹치는 부분 있는지 확인
💡코드(이자 다른 사람 풀이)
def solution(routes):
routes.sort()
answer = 1
camera = routes[0]
for r in routes[1:]:
if camera[1] >= r[0]:
camera = [r[0], min(r[1], camera[1])]
else:
camera = r
answer += 1
return answer
💡 느낀점 or 기억할정보
가끔 이렇게 단순하게 생각하면 되는데 단순하게 생각하기가 어려운 문제들도 있구나..싶었다.
'알고리즘' 카테고리의 다른 글
[그리디] 프로그래머스 level 3 숫자게임 (Python 파이썬) (1) | 2024.10.18 |
---|---|
[연습문제] 프로그래머스 level 3 최고의 집합 (Python 파이썬) (0) | 2024.10.17 |
[연습문제] 프로그래머스 level 2 연속 부분 수열 합의 개수 (Python 파이썬) (0) | 2024.10.15 |
[해시] 프로그래머스 level 3 야근지수 (Python 파이썬) - 해결 못 함 (1) | 2024.10.03 |
[동적계획법(Dynamic Programming)] 프로그래머스 level 3 정수 삼각형 (Python 파이썬) (0) | 2024.09.29 |