목록CodingTest/programmers (96)
기억은 짧고 기록은 길다

Link 코딩테스트 연습 - 메뉴 리뉴얼 레스토랑을 운영하던 스카피는 코로나19로 인한 불경기를 극복하고자 메뉴를 새로 구성하려고 고민하고 있습니다. 기존에는 단품으로만 제공하던 메뉴를 조합해서 코스요리 형태로 재구성해서 programmers.co.kr Solution 해당 문제는 combinations와 Counter를 이용해 해결할 수 있었다. Counter에 포함된 메서드에 대한 설명은 아래 첨부 링크를 참고바란다. from itertools import combinations from collections import Counter def solution(orders, course): answer = [] for i in range(len(course)): c = [] for j in range(..

Link 코딩테스트 연습 - [3차] n진수 게임 N진수 게임 튜브가 활동하는 코딩 동아리에서는 전통적으로 해오는 게임이 있다. 이 게임은 여러 사람이 둥글게 앉아서 숫자를 하나씩 차례대로 말하는 게임인데, 규칙은 다음과 같다. 숫자를 0 programmers.co.kr Solution 해당 문제를 풀기 위해서는 10진수를 n진수로 변환하는 방법을 필수 적으로 알아야한다. 다음은 기본적인 10진수 -> n진수 변환법이다. # n: 진수 변환을 위하는 10진수 # q: 변환을 원하는 진수 def solution(n, q): b = '' while n > 0: n, mod = divmod(n, q) b += str(mod) return b[::-1] 필자의 풀이는 해당 변환법을 활용하여 해결하였다. 또한 문..

Link 코딩테스트 연습 - 괄호 회전하기 programmers.co.kr Solution 시작에 앞서 필자의 풀이는 틀린 풀이이다. 필자는 예를 들어 '( [ ) ]'같은 경우도 True 인 경우라고 생각했으나 다른 풀이를 찾아보며 '( [ ) ]'인 경우는 False라는 것을 알게 되었다. 올바른 괄호의 경우 괄호가 엇갈리게 닫혀있는 경우는 제외한다. def isCorrect(s): if s[0] == ']' or s[0] == '}' or s[0] == ')': return False cnt = [0, 0, 0] for i in range(len(s)): if s[i] == '[': cnt[0] += 1 elif s[i] == ']': cnt[0] -= 1 elif s[i] == '{': cnt[1..

Link 코딩테스트 연습 - n^2 배열 자르기 정수 n, left, right가 주어집니다. 다음 과정을 거쳐서 1차원 배열을 만들고자 합니다. n행 n열 크기의 비어있는 2차원 배열을 만듭니다. i = 1, 2, 3, ..., n에 대해서, 다음 과정을 반복합니다. 1행 1열부 programmers.co.kr Solution 처음에 풀때는 간단한 문제라 생각하고 풀었지만 역시나 시간초과에 걸리고 말았다. def solution(n, left, right): answer = [] for i in range(n): for j in range(n): answer.append(max(i + 1, j + 1)) return answer[left:right + 1] Other Solution 이에 left와 r..

Link 코딩테스트 연습 - [3차] 파일명 정렬 파일명 정렬 세 차례의 코딩 테스트와 두 차례의 면접이라는 기나긴 블라인드 공채를 무사히 통과해 카카오에 입사한 무지는 파일 저장소 서버 관리를 맡게 되었다. 저장소 서버에는 프로그램 programmers.co.kr Solution 해당 문제는 number_check을 기준으로 if문을 구성하면 해결되는 문제였다. 숫자가 나오기 전까지는 head에 더해주고 (number_check == 0) 숫자가 나오면 number에 더해주고 (number_check = 1) 다시 문자가 나오면 tail에 나머지를 모두 추가해준다. (number_check == 1 and not isdigit()) def solution(files): answer = [] for i ..