[프로그래머스] 요격 시스템(python)

Jinho Jang·2023년 4월 14일
0

문제

문제 설명

  • 구간 리스트가 주어질 때, 이를 모두 커버할 수 있는 포인트의 개수를 구하는 것
  • 단, 포인트는 개구간

풀이

  • 구간의 end-point를 기준으로 정렬
  • 리스트를 순회하며 통과 여부 조사
    • 포인트 값을 0으로 초기화(target 값의 시작 범위가 0)
    • 포인트의 현재 값이 target의 start-point보다 작거나 같으면 통과 x=> 포인트의 값을 end-point로 지정하고 count를 1증가시킴
 def solution(targets):
    target_lst = sorted(targets, key = lambda x: x[1])
    x = 0
    answer = 0
    for target in target_lst:
        if target[0]>=x:
            answer +=1
            x = target[1]
    return answer

0개의 댓글

관련 채용 정보