https://school.programmers.co.kr/learn/courses/30/lessons/132265
from collections import Counter
def solution(topping):
answer = 0
global n
n = len(topping)
toppCounts = Counter(topping)
aArr = {}
for i in range(n):
item = topping[i]
subFromDict(toppCounts, item)
addToDict(aArr, item)
if len(toppCounts) == len(aArr):
answer += 1
return answer
def addToDict(dic, item):
if item not in dic:
dic[item] = 1
else:
dic[item] += 1
def subFromDict(dic, item):
if item not in dic:
return
dic[item] -= 1
if dic[item] == 0:
del dic[item]
무지성 for문을 쓰면 시간초과가 난다. 주의하라
처음에 set을 쓰려하였으나 이것도 시간초과가 났다. 왜 나는지는 모르겠다. 아마 풀이가 잘못된 거 같다
시간초과로 애를 먹다가 결국 다른 분들의 풀이를 보고 해결하였다.
728x90
'코테 > 프로그래머스' 카테고리의 다른 글
프로그래머스 순위검색 (0) | 2023.11.09 |
---|---|
프로그래머스 상담원 인원 (0) | 2023.10.21 |
프로그래머스 호텔대실 파이썬 (0) | 2023.06.11 |
프로그래머스 리코쳇 로봇 파이썬 (1) | 2023.06.11 |
프로그래머스 미로탈출 (0) | 2023.06.09 |