[프로그래머스] 입실 퇴실

Kyeongmin·2021년 9월 25일
0

알고리즘

목록 보기
7/24

📃 문제

[위클리 챌린지] 입실 퇴실 🔗링크


🧠 풀이

✏️ 경우의 수를 만들어내기가 어려워 방을 만들어 입실/퇴실을 시뮬레이션하여 구현했다.

경우의 수를 짜내는 과정에서 계속 막혀서..
결국 다른 사람의 풀이를 보고 접근 방식을 배웠다.

✏️ 마주치는 사람의 수 = 본인이 들어온 후 나가는 사람 + 본인이 나갈때 방에 있는 사람

def solution(enter, leave):
    room = set()
    answer = [0] * len(enter)
    
    for l in leave:
        while l not in room:
            room.add(enter.pop(0))
        room.remove(l)
        
        for p in room:
            answer[p-1] += 1
        answer[l-1] += len(room)

    return answer
profile
개발자가 되고 싶은 공장장이🛠

0개의 댓글