코딩 테스트/Level 3
-
금과 은 운반하기코딩 테스트/Level 3 2021. 10. 8. 12:28
https://programmers.co.kr/learn/courses/30/lessons/86053 코딩테스트 연습 - 금과 은 운반하기 어느 왕국에 하나 이상의 도시들이 있습니다. 왕국의 왕은 새 도시를 짓기로 결정하였습니다. 해당 도시를 짓기 위해서는 도시를 짓는 장소에 금 a kg과 은 b kg이 전달되어야 합니다. 각 도시에는 programmers.co.kr 블로그에서 다룬 적 있다. https://comdoc.tistory.com/entry/32-%EC%9D%B4%EC%A7%84-%EA%B2%80%EC%83%89Binary-Search = n_gold and silver >= n_silver and total >= n_gold + n_silver end = answer = 10 ** 15 st..
-
2021 KAKAO BLIND RECRUITMENT: 카드 짝 맞추기코딩 테스트/Level 3 2021. 10. 8. 11:12
https://programmers.co.kr/learn/courses/30/lessons/72415 코딩테스트 연습 - 카드 짝 맞추기 [[1,0,0,3],[2,0,0,0],[0,0,0,2],[3,0,1,0]] 1 0 14 [[3,0,0,2],[0,0,1,0],[0,1,0,0],[2,0,0,3]] 0 1 16 programmers.co.kr 파이썬 from collections import deque def solution(board, r, c): answer = 0 board = ''.join(str(each) for row in board for each in row) directions = ((1, 0), (-1, 0), (0, 1), (0, -1)) que = deque([(r, c, 0, -1..
-
월간 코드 챌린지 시즌2: 모두 0으로 만들기코딩 테스트/Level 3 2021. 10. 5. 00:48
https://programmers.co.kr/learn/courses/30/lessons/76503 코딩테스트 연습 - 모두 0으로 만들기 각 점에 가중치가 부여된 트리가 주어집니다. 당신은 다음 연산을 통하여, 이 트리의 모든 점들의 가중치를 0으로 만들고자 합니다. 임의의 연결된 두 점을 골라서 한쪽은 1 증가시키고, 다른 한 programmers.co.kr import sys sys.setrecursionlimit(300000) def solution(a, edges): answer = 0 if sum(a) != 0: return -1 tree = {} for node1, node2 in edges: tree.setdefault(node1, []).append(node2) tree.setdefau..
-
월간 코드 챌린지 시즌2: 110 옮기기코딩 테스트/Level 3 2021. 10. 2. 19:20
https://programmers.co.kr/learn/courses/30/lessons/77886 코딩테스트 연습 - 110 옮기기 0과 1로 이루어진 어떤 문자열 x에 대해서, 당신은 다음과 같은 행동을 통해 x를 최대한 사전 순으로 앞에 오도록 만들고자 합니다. x에 있는 "110"을 뽑아서, 임의의 위치에 다시 삽입합니다. 예를 programmers.co.kr 파이썬 일단 개념을 제대로 잡았는 지 전수조사(brute force)로 확인... def solution(s): return [move110(num) for num in s] def move110(num: str) -> str: index = num.find('110') if index == -1: return num num = num[:..
-
2021 카카오 채용연계형 인턴십: 표 편집코딩 테스트/Level 3 2021. 9. 24. 18:41
https://programmers.co.kr/learn/courses/30/lessons/81303 코딩테스트 연습 - 표 편집 8 2 ["D 2","C","U 3","C","D 4","C","U 2","Z","Z"] "OOOOXOOO" 8 2 ["D 2","C","U 3","C","D 4","C","U 2","Z","Z","U 1","C"] "OOXOXOOO" programmers.co.kr 파이썬 문제를 제대로 이해했는 지 확인... def solution(n, k, cmd): temp = [i for i in range(n)] undos = [] for command in cmd: if command[0] == 'U': k -= int(command[2:]) elif command[0] == 'D..
-
위클리 챌린지3주차: 퍼즐 조각 채우기코딩 테스트/Level 3 2021. 9. 23. 01:51
https://programmers.co.kr/learn/courses/30/lessons/84021 코딩테스트 연습 - 3주차_퍼즐 조각 채우기 [[1,1,0,0,1,0],[0,0,1,0,1,0],[0,1,1,0,0,1],[1,1,0,1,1,1],[1,0,0,0,1,0],[0,1,1,1,0,0]] [[1,0,0,1,1,0],[1,0,1,0,1,0],[0,1,1,0,1,1],[0,0,1,0,0,0],[1,1,0,1,1,0],[0,1,0,0,0,0]] 14 [[0,0,0],[1,1,0],[1,1,1]] [[1,1,1],[1,0,0],[0,0,0]] 0 programmers.co.kr 파이썬 생각의 흐름에 따라... def solution(game_board, table): answer = 0 blanks ..
-
월간 코드 챌린지 시즌1 스타수열코딩 테스트/Level 3 2021. 9. 6. 19:55
https://programmers.co.kr/learn/courses/30/lessons/70130 코딩테스트 연습 - 스타 수열 programmers.co.kr 파이썬 from collections import Counter def solution(array): if len(array) == 1: return 0 count = Counter(array) answer = -1 for key in count: if count[key] * 2 < answer: continue index, length = 0, 0 max_key = key while index < len(array) - 1: if (array[index] != max_key and array[index + 1] != max_key) or a..
-
스티커 모으기(2)코딩 테스트/Level 3 2021. 5. 5. 21:09
programmers.co.kr/learn/courses/30/lessons/12971 코딩테스트 연습 - 스티커 모으기(2) N개의 스티커가 원형으로 연결되어 있습니다. 다음 그림은 N = 8인 경우의 예시입니다. 원형으로 연결된 스티커에서 몇 장의 스티커를 뜯어내어 뜯어낸 스티커에 적힌 숫자의 합이 최대가 되도록 programmers.co.kr 같은 문제 입니다. comdoc.tistory.com/entry/%EB%8F%84%EB%91%91%EC%A7%88 도둑질 https://programmers.co.kr/learn/courses/30/lessons/42897 코딩테스트 연습 - 도둑질 도둑이 어느 마을을 털 계획을 하고 있습니다. 이 마을의 모든 집들은 아래 그림과 같이 동그랗게 배치되어 있습니..