알고리즘/프로그래머스문제풀이
[Python/프로그래머스][1차]캐시_구현
개발자 덕구🐾
2022. 10. 13. 10:31
728x90
https://school.programmers.co.kr/learn/courses/30/lessons/17680
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
cacheSize가 있는지 없는지에 따라 2가지로 구분해서 코드를 만들어야한다.
그리고 대소문자 구분이 없으므로 city.lower()를 통해서 모든 문자를 소문자로 만들어 비교한다.
코드 :
def solution(cacheSize, cities):
time = 0
stack = []
for c in cities :
c= c.lower()
if cacheSize :
if c in stack :
time +=1
stack.remove(c)
stack.append(c)
else :
time += 5
if len(stack) == cacheSize : stack.pop(0)
stack.append(c)
else :
time+=5
return time
반응형