할인 행사
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
- 내 풀이
from collections import deque
def solution(want, number, discount):
answer = 0
queue=deque()
dic={}
for w,n in zip(want,number):
dic[w]=n
for idx,dc in enumerate(discount):
q=''
if len(queue)>=10:
q=queue.popleft()
queue.append(dc)
if q in list(dic.keys()):
dic[q]+=1
if dc in list(dic.keys()):
dic[dc]-=1
if len(set(dic.values()))==1 and list(dic.values())[0]==0:
answer+=1
return answer
- 다른 사람 풀이
- Counter 사용
- 결과가 key: value(갯수) 형식으로 나오기 때문에 dic과 == 비교 가능
from collections import Counter
def solution(want, number, discount):
answer = 0
dic = {}
for i in range(len(want)):
dic[want[i]] = number[i]
for i in range(len(discount)-9):
if dic == Counter(discount[i:i+10]):
answer += 1
return answer
'코딩테스트 > 프로그래머스' 카테고리의 다른 글
| [프로그래머스] [union-find][bfs] 네트워크 (0) | 2024.07.15 |
|---|---|
| [프로그래머스][구현] 2018 카카오 [1차] 셔틀버스 (0) | 2024.06.21 |
| [프로그래머스] [원형 수열] [스택] 연속 부분 수열 합의 개수 (0) | 2024.06.20 |
| [프로그래머스] [그리디][최소신장트리][크루스칼 알고리즘] 섬 연결하기 (0) | 2024.04.29 |
| [프로그래머스][백트래킹][그리디] 광물 캐기 (0) | 2024.04.18 |