백준 문제 풀이 - 피시방 알바 1453번

Joonyeol Sim👨‍🎓·2022년 1월 17일
0

백준문제풀이

목록 보기
70/128

📜 문제 이해하기

세준이는 피시방에서 아르바이트를 한다. 세준이의 피시방에는 1번부터 100번까지 컴퓨터가 있다.
들어오는 손님은 모두 자기가 앉고 싶은 자리에만 앉고싶어한다. 따라서 들어오면서 번호를 말한다. 만약에 그 자리에 사람이 없으면 그 손님은 그 자리에 앉아서 컴퓨터를 할 수 있고, 사람이 있다면 거절당한다.
거절당하는 사람의 수를 출력하는 프로그램을 작성하시오. 자리는 맨 처음에 모두 비어있고, 어떤 사람이 자리에 앉으면 자리를 비우는 일은 없다.

💡 문제 재정의

피시방의 피시가 사용중이라면 사람을 거절하는데 이 때 거절당하는 사람의 수를 구하자.

✏️ 계획 수립

1번부터 100번까지 0을 가진 배열을 만든다.
이 때 사용하고자 하는 사람이 등장하면 그 값을 1로 해주고 만약 이 pc를 원하는 다른 사람이 들어오면 거절한다.

💻 계획 수행

if __name__ == '__main__':
    N = int(input())
    pc_list = [0 for _ in range(101)]
    count = 0
    customers = list(map(int, input().split()))
    for customer in customers:
        if customer <= 100 and not pc_list[customer]:
            pc_list[customer] = 1
        else:
            count += 1
    print(count)

🤔 회고

배열을 이용해 문제를 적절히 구현하면 되는 문제이다.

profile
https://github.com/joonyeolsim

0개의 댓글