[プログラマー]管制カメラ/42884号/Python/Python/GRADYアルゴリズム

1038 ワード

💡質問する
高速道路を走るすべての車両が高速道路を使用していると同時に、管制カメラを一度に見られるようにカメラを設置したいと思っています.
高速道路を走行する車両の経路をパラメータとして指定すると、すべての車両が一度に取り締まりカメラに遭遇したときに少なくとも何台のカメラを取り付ける必要があるかを返す解関数が完了する.
せいげんじょうけん
  • 車両の数は1台以上10000台以下である.
  • 路線は車両の移動路線[i][0]、路線[i][1]はi次車両が高速道路に進入する場所を含み、路線[i][1]はi次車両が高速道路を離れる場所を含む.
  • 車両の進入点にカメラが取り付けられていても、カメラに遭遇したものとみなされる.
  • 車両の進入点は、−30000以上30000以下である.
  • にゅうしゅつりょく
    routesreturn[-20,15], [-14,-5], [-18,-13], [-5,-3]]2
    ###I/O例説明
    -5時にカメラを設置すると、2台目、4台目の車がカメラに遭遇します.
    -15時にカメラを設置すると、1台目と3台目の車がカメラに遭遇します.
    📖私が書いたコード
    def solution(routes):
        answer = 0
        routes.sort(key=lambda x:(x[1],x[0]))  #진출 기준으로 정렬
        e=-30001
        for r in routes:
            s=r[0]
            if s<=e:  #진입지점이 이전의 진출지점보다 전이면 카메라 설치안해도됨
                continue
            answer+=1
            e=r[1]
        return answer
    質問元:https://programmers.co.kr/learn/courses/30/lessons/42884