코딩 테스트
-
나머지가 1이 되는 수 찾기코딩 테스트/Level 1 2021. 10. 16. 12:57
https://programmers.co.kr/learn/courses/30/lessons/87389 코딩테스트 연습 - 나머지가 1이 되는 수 찾기 자연수 n이 매개변수로 주어집니다. n을 x로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 return 하도록 solution 함수를 완성해주세요. 답이 항상 존재함은 증명될 수 있습니다. 제한사항 입 programmers.co.kr 파이썬 def solution(n): for each in range(2, n): if n % each == 1: return each 자바 class Solution { public int solution(int n) { var answer = 2; while (n % answer != 1) answer++; re..
-
교점에 별 만들기코딩 테스트/Level 2 2021. 10. 16. 11:23
https://programmers.co.kr/learn/courses/30/lessons/87377 코딩테스트 연습 - 10주차 [[2, -1, 4], [-2, -1, 4], [0, -1, 1], [5, -8, -12], [5, 8, 12]] ["....*....", ".........", ".........", "*.......*", ".........", ".........", ".........", ".........", "*.......*"] [[0, 1, -1], [1, 0, -1], [1, 0, 1]] ["*.*"] [[1, -1, 0], [2, -1, 0], [4, - programmers.co.kr from itertools import combinations def solution(li..
-
공 이동 시뮬레이션코딩 테스트/Level 3 2021. 10. 16. 10:28
https://programmers.co.kr/learn/courses/30/lessons/87391 코딩테스트 연습 - 공 이동 시뮬레이션 n행 m열의 격자가 있습니다. 격자의 각 행은 0, 1, ..., n-1번의 번호, 그리고 각 열은 0, 1, ..., m-1번의 번호가 순서대로 매겨져 있습니다. 당신은 이 격자에 공을 하나 두고, 그 공에 다음과 같은 쿼리 programmers.co.kr 아직 프로그래머스는 파이썬 10의 패턴매칭을 지원하지 않는다. 파이썬 3.8.5 3.8.5 (default, Sep 8 2020, 23:06:40) [GCC 9.3.0] 일단 전수조사(brute force)... def solution(n, m, x, y, queries): answer = 0 for start..
-
다람쥐 옮기기코딩 테스트/Level 3 2021. 10. 14. 12:14
상자를 이용하여 최다(多)의 다람쥐를 옮겨야 한다. 다음 조건을 만족하며 이동 가능한 최대의 다람쥐의 수는? 1) 박스는 2개이다. 2) 박스는 30kg 이하까지 담을 수 있다. 3) 다람쥐는 총 9마리이다. 4) 다람쥐의 몸무게(kg)는 각각 [12, 9, 9, 22, 12, 8, 5, 2, 3]이다. 순열을 이용한 전수조사(brute force) from itertools import permutations def solution(weights): answer = 0 for p_weights in permutations(weights): start = count = 0 for _ in range(2): in_box = 0 for i in range(start, 9): if (temp := in_box..
-
금과 은 운반하기코딩 테스트/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..
-
전력망을 둘로 나누기코딩 테스트/Level 2 2021. 10. 7. 22:29
https://programmers.co.kr/learn/courses/30/lessons/86971 코딩테스트 연습 - 9주차 9 [[1,3],[2,3],[3,4],[4,5],[4,6],[4,7],[7,8],[7,9]] 3 7 [[1,2],[2,7],[3,7],[3,4],[4,5],[6,7]] 1 programmers.co.kr 파이썬 def solution(n, wires): answer = n tree = {k: set() for k in range(1, n + 1)} for a, b in wires: tree[a].add(b) tree[b].add(a) for a, b in wires: tree[a].remove(b) tree[b].remove(a) result = abs(2 * dfs(a, tr..
-
월간 코드 챌린지 시즌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..