반응형 분류 전체보기162 [파이썬🐍] 프로그래머스 : 괄호 회전하기 def solution(s): answer = 0 for i in range(len(s)): if i == 0: s else: s = s[1:] + s[0] if check(s)==True: answer += 1 return answer def check(s): stack = [] for i in s: if i in ('[', '(', '{'): stack.append(i) else: if not stack: return False x = stack.pop() if i == ']' and x != '[': return False elif i == ')' and x != '(': return False elif i == '}' and x != '{': return False if stack: return .. 2021. 5. 27. [파이썬🐍] 프로그래머스 : [1차] 캐시 from collections import deque def solution(cacheSize, cities): answer = 0 buffer = deque() if cacheSize == 0: return len(cities) * 5 else: for i in cities: i = i.lower() #대소문자 구분 X if i in buffer: answer += 1 else: answer += 5 if i in buffer: #이미 존재한다면 buffer.remove(i) #제거 else: if len(buffer) >= cacheSize: #꽉 찼다면 buffer.popleft() #가장 오랫동안 사용되지 않은 튜플 제거 buffer.append(i) #가장 최근으로 추가 return answer.. 2021. 5. 26. [파이썬🐍] 프로그래머스 : 점프와 순간이동 def solution(n): ans = 0 while n > 0: q,r = divmod(n,2) n = q if r != 0: ans += 1 return ans 설명에 비해 간단한 코드였다. n을 2로 계속나누는 작업만 하면 된다. 2로 나누다가 나눠떨어지지 않는 경우만 더해주면 된다. 2021. 5. 26. [파이썬🐍] 프로그래머스 : 스킬트리 def solution(skill, skill_trees): answer = 0 for i in skill_trees: skill_list = list(skill) for s in i: if s in skill: #skill에 포함되어 있지만 if s != skill_list.pop(0): #순서가 안맞는 경우 break else: answer += 1 #break에 걸리지 않고 for문을 다 돌았을 때 return answer 2021. 5. 26. 이전 1 ··· 12 13 14 15 16 17 18 ··· 41 다음 반응형