Coding Test Prep
[프로그래머스 연습] 더 맵게 (Python)
[프로그래머스 연습] 더 맵게 (Python)
2021.10.02https://programmers.co.kr/learn/courses/30/lessons/42626 코딩테스트 연습 - 더 맵게 매운 것을 좋아하는 Leo는 모든 음식의 스코빌 지수를 K 이상으로 만들고 싶습니다. 모든 음식의 스코빌 지수를 K 이상으로 만들기 위해 Leo는 스코빌 지수가 가장 낮은 두 개의 음식을 아래와 같 programmers.co.kr import heapq def solution(scoville, K): answer = 0 # 효율성 테스트 실패 # while min(scoville) < K: # scoville.sort() # scoville.append(scoville.pop(0) + (scoville.pop(0) * 2)) # answer += 1 # heapq 모듈을 사용..
[프로그래머스 연습] 수식 최대화 (Python)
[프로그래머스 연습] 수식 최대화 (Python)
2021.09.11https://programmers.co.kr/learn/courses/30/lessons/67257 코딩테스트 연습 - 수식 최대화 IT 벤처 회사를 운영하고 있는 라이언은 매년 사내 해커톤 대회를 개최하여 우승자에게 상금을 지급하고 있습니다. 이번 대회에서는 우승자에게 지급되는 상금을 이전 대회와는 다르게 다음과 programmers.co.kr from itertools import permutations def calc(priority, n, expression): if n == 2: return str(eval(expression)) if priority[n] == '*': res = eval('*'.join([calc(priority, n + 1, e) for e in expression.spl..
[프로그래머스 연습] 두 정수 사이의 합 (Python)
[프로그래머스 연습] 두 정수 사이의 합 (Python)
2021.09.11https://programmers.co.kr/learn/courses/30/lessons/12912 코딩테스트 연습 - 두 정수 사이의 합 두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요. 예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다. 제한 조건 a와 b가 같은 경우 programmers.co.kr def solution(a, b): answer = 0 min = a max = b if b < a: max = a min = b for i in range(min,max+1): answer += i return answer 엄청 간단한 다른 사람 풀이 (대단..) sum과 min/max 함수..
[프로그래머스 연습] 올바른 괄호 (Python)
[프로그래머스 연습] 올바른 괄호 (Python)
2021.09.11https://programmers.co.kr/learn/courses/30/lessons/12909 코딩테스트 연습 - 올바른 괄호 괄호가 바르게 짝지어졌다는 것은 '(' 문자로 열렸으면 반드시 짝지어서 ')' 문자로 닫혀야 한다는 뜻입니다. 예를 들어 "()()" 또는 "(())()" 는 올바른 괄호입니다. ")()(" 또는 "(()(" 는 올바르지 않은 programmers.co.kr def solution(s): stack = [] for c in s: if c == '(': stack.append(c) else: if stack and stack.pop() == '(': continue else: return False return len(stack) == 0 다른 풀이 def is_pair(s..
[프로그래머스 연습] 오픈채팅방 (Python)
[프로그래머스 연습] 오픈채팅방 (Python)
2021.09.11https://programmers.co.kr/learn/courses/30/lessons/42888 코딩테스트 연습 - 오픈채팅방 오픈채팅방 카카오톡 오픈채팅방에서는 친구가 아닌 사람들과 대화를 할 수 있는데, 본래 닉네임이 아닌 가상의 닉네임을 사용하여 채팅방에 들어갈 수 있다. 신입사원인 김크루는 카카오톡 오 programmers.co.kr * 2019 KAKAO BLIND RECRUITMENT 딕셔너리를 활용해 유저 아이디에 대한 유저 닉네임을 저장해주면 된다. def solution(record): answer = [] dict = {} for mes in record: # Enter나 Change인 경우 dict에 추가 if (mes.split(' ')[0] == 'Enter') | (mes...
[프로그래머스 연습] 문자열 압축 (Python)
[프로그래머스 연습] 문자열 압축 (Python)
2021.09.04https://programmers.co.kr/learn/courses/30/lessons/60057 코딩테스트 연습 - 문자열 압축 데이터 처리 전문가가 되고 싶은 "어피치"는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문 programmers.co.kr * 2020 KAKAO BLIND RECRUITMENT 문제 def solution(s): cand = [len(s)] for i in range(1, len(s)): #size split = [s[j:j+i] for j in range(0,len(s),i)] cnt = 1 res = "" # check duplicate for k in range(1,l..
Codility Developer Training Lesson 1번
Codility Developer Training Lesson 1번
2021.08.15A binary gap within a positive integer N is any maximal sequence of consecutive zeros that is surrounded by ones at both ends in the binary representation of N. number 9 has binary representation 1001 and contains a binary gap of length 2 number 529 has binary representation 1000010001 and contains two binary gaps: one of length 4 and one of length 3 number 20 has binary representation 10100 and..