반응형 레벨214 [프로그래머스] [1차] 캐시 Python Code 2022.09.20 - [Project/Lotto] - [프로젝트] 로또 웹 만들기(next js, firebase, git action) 최근에 계속 로또 프로젝트를 하느라 블로그 신경을 못썼다. 오랜만에 코딩 테스트를 다시 포스트 해보겠다. 2018년 카카오 블라인드 테스트 1차 문제인 캐시이다. 레벨은 2로 되어있지만 쉬운 편이다. 문제 문제는 쉽게 이해할 수 있다. 여기서 입력 형식의 마지막 문장을 주의해서 소문자든 대문자든 맞춰주어야 한다. 구현 구현은 쉽다. LRU란 최근에 가장 많이 안 쓰인 것을 캐시에서 제외하는 로직이다. 그러므로 새로운 것을 계속 넣어주고 기존의 것은 빼주는 queue를 선택하고 그중에서도 성능을 위해 deque방식을 택했다. cache hit 시 cache에 있던 것을.. 2022. 9. 27. [프로그래머스] 숫자의 표현 Python Code 시험 준비를 조금 하느라 포스팅을 오랜만에 하게 되었다. 추석 연휴까지는 포스팅을 많이는 못할 것 같다 ㅠㅠ 그럼 이번 문제를 보자. 프로그래머스 숫자의 표현을 파이썬으로 풀어보겠다. 레벨은 2로 되어있지만 예전 문제라 쉬운 편이다. 문제 구현 구현은 매번 sum을 하면 시간이 오래 걸리기 때문에 숫자를 하나씩 더하고 빼면서 sum을 저장하는 방식 이미지화하면 윈도우를 슬라이딩하는 방식(?)으로 구현해보겠다. 설명이 좀 모호해서 코드로 보겠다. 코드 def solution(n): answer = [] suma, count=0, 0 i=1 while i 2022. 9. 8. [프로그래머스] 괄호 변환 Python Code 프로그래머스 괄호 변환을 파이썬으로 풀어보겠다. 이 문제는 2020년 카카오 코딩 테스트 문제고 레벨은 2로 되어있다. 문제 이 문제의 설명은 길지만 용어의 정의를 차근차근 코드로 옮겨 적으면 된다. 매개변수 설명에 양쪽 괄호의 개수가 항상 같으므로 예외사항을 따로 고려하지 않아도 된다. 구현 2번에 "균형 잡힌 문자열" u, v로 구분하는 함수, 3, 4번을 나누는 기준이 되는 "올바른 괄호 문자열" 판단 함수를 분리해서 구현했다. 문제 설명에 구현이 다 나와있어서 별로 생각할 게 없는 문제다. 코드 def divUV(p): l, r = 0,0 for i in range(len(p)): if p[i] == '(': l +=1 else: r +=1 if l==r: return p[:i+1], p[i+1:.. 2022. 9. 4. [프로그래머스] 메뉴 리뉴얼 Python Code 프로그래머스 메뉴 리뉴얼을 파이썬으로 풀어보겠다. 이번 문제의 난이도는 레벨 2고 2021년 카카오 문제다. 비교적 최근 문제라 개인적으로 약간 까다로웠다. 문제 가장 많이 주문된 메뉴들을 찾아 세트의 메뉴 개수에 맞게 코스 메뉴로 구성하는 문제이다. 구현 combinations 밖에 생각나지 않았다. 우선 combinations를 써서 각 order의 조합을 모두 구한 후 string으로 합쳐서 dict를 만들었다. 그리고 dict의 value가 가장 높은 값을 찾아서 answer에 더해줬다. 마지막으로 사전순 정렬을 위해 sort 해서 정답을 리턴했다. 코드 from itertools import combinations def solution(orders, course): answer = [] for.. 2022. 9. 1. 이전 1 2 3 4 다음 반응형