배열의 중복을 제거하는 쉬운 문제다.
파이썬은 in 을 통해 배열속에 있는지를 체크해 주는데 편리해서 자주 사용한다.
그런데 in을 쓰면 종종 시간초과로 문제를 틀리는데 이 문제 또한 그러했다.
game_dict = {'Y':2 ,'F':3, 'O':4 }
people = []
N , game = input().split(" ")
for i in range(int(N)):
name = input()
if name not in people:
people.append(name)
print( len(people) // (game_dict[game] -1 ) )
그래서 배열의 중복을 set을 이용하여 제거해 주어 해결했다.
game_dict = {'Y':2 ,'F':3, 'O':4 }
people = []
N , game = input().split(" ")
for i in range(int(N)):
people.append(input())
people = list(set(people))
print( len(people) // (game_dict[game] -1 ) )
'백준' 카테고리의 다른 글
[백준 1806] 부분합 (python) (0) | 2023.04.06 |
---|---|
[백준 1987] 알파벳 (python) (0) | 2023.04.05 |
[백준 13549] 숨바꼭질 3 (python) 우선순위 큐를 이용한 구현 (0) | 2023.01.02 |
[백준 4659] 비밀번호 발음하기 python (50%에서 틀림) (0) | 2023.01.02 |
[백준 20055] 컨베이어 벨트 위의 로봇(python) deque 이용 구현 (0) | 2023.01.01 |