코딩 테스트
-
[1차] 추석 트래픽코딩 테스트/Level 3 2020. 10. 4. 12:26
[1차] 추석 트래픽 2018 KAKAO BLIND RECRUITMENT 1558명 완료 https://programmers.co.kr/learn/courses/30/lessons/17676 코딩테스트 연습 - [1차] 추석 트래픽 입력: [ 2016-09-15 20:59:57.421 0.351s, 2016-09-15 20:59:58.233 1.181s, 2016-09-15 20:59:58.299 0.8s, 2016-09-15 20:59:58.688 1.041s, 2016-09-15 20:59:59.591 1.412s, 2016-09-15 21:00:00.464 1.466s, 2016-09-15 21:00:00.741 1.581s, 2016-09-15 21:00:00.748 programmers.co.k..
-
자물쇠와 열쇠코딩 테스트/Level 3 2020. 10. 3. 18:12
자물쇠와 열쇠 2020 KAKAO BLIND RECRUITMENT 1754명 완료 https://programmers.co.kr/learn/courses/30/lessons/60059 코딩테스트 연습 - 자물쇠와 열쇠 [[0, 0, 0], [1, 0, 0], [0, 1, 1]] [[1, 1, 1], [1, 1, 0], [1, 0, 1]] true programmers.co.kr 어려운 문제는 아니옵고.. 절차가 좀 복잡한 문제.. 깊은 복사에 주의하면 좋을 듯.. 카카오의 테스트에는 구현이 복잡한 문제가 꼭 나오는 군요. 알고리듬 뿐만 아니라 코드 구현 능력까지 테스트 하는 듯합니다. def solution(key, lock): from copy import deepcopy for _ in range(4..
-
N-Queen코딩 테스트/Level 3 2020. 10. 2. 18:46
N-Queen 연습문제 778명 완료 https://programmers.co.kr/learn/courses/30/lessons/12952 코딩테스트 연습 - N-Queen 가로, 세로 길이가 n인 정사각형으로된 체스판이 있습니다. 체스판 위의 n개의 퀸이 서로를 공격할 수 없도록 배치하고 싶습니다. 예를 들어서 n이 4인경우 다음과 같이 퀸을 배치하면 n개의 퀸은 programmers.co.kr 유명하고 오래된 알고리듬 문제다. 위키백과에도 나온 문제라는 사실을 알고 있다면.. 이런 장난을 칠 수도 있다.. solution = lambda n: (1, 0, 0, 2, 10, 4, 40, 92, 352, 724, 2680, 14200)[n - 1] 테스트 1 〉통과 (0.04ms, 10.7MB) 테스트 ..
-
거스름돈코딩 테스트/Level 3 2020. 10. 1. 18:46
거스름돈 연습문제 925명 완료 동적계획법, 테이블 작성하는 게 쉽지 않다. https://programmers.co.kr/learn/courses/30/lessons/12907 코딩테스트 연습 - 거스름돈 Finn은 편의점에서 야간 아르바이트를 하고 있습니다. 야간에 손님이 너무 없어 심심한 Finn은 손님들께 거스름돈을 n 원을 줄 때 방법의 경우의 수를 구하기로 하였습니다. 예를 들어서 손님께 5�� programmers.co.kr 만들 금액 -> 0원 1원 2원 3원 4원 5원 1원 동전 경우의 수 -> 1 가지 1 1 1 1 1 2원 동전 추가시 경우의 수 -> 1 1 2 2 3 3 5원 동전 추가시 경우의 수 -> 1 1 2 2 3 4 0원이 가능한 조합은 동전 0개를 사용할 수 밖에 없음 그..
-
순위코딩 테스트/Level 3 2020. 9. 30. 18:28
순위 그래프 986명 완료 플로이드 와샬 알고리듬을 이용하면 되지만.. 족보 없는 방법(야매)으로도 풀 수 있다.. n번 선수, n번 선수에게 이긴 선수들, n번 선수에게 진 선수들, 이 셋의 합이 n이 되면 ~! n번은 순서를 알 수 있는 선수. 그림을 그려보면 직관적이다. 다만 어떻게 빠짐없이 이긴 선수와 진 선수를 정리할 수 있을지가 관건.. ..... https://programmers.co.kr/learn/courses/30/lessons/49191 코딩테스트 연습 - 순위 5 [[4, 3], [4, 2], [3, 2], [1, 2], [2, 5]] 2 programmers.co.kr def solution(n, results): winner_loser, loser_winner = {i + 1:..
-
하노이의 탑코딩 테스트/Level 3 2020. 9. 29. 08:46
하노이의 탑 연습문제 1186명 완료 워낙 유명한 문제라... https://programmers.co.kr/learn/courses/30/lessons/12946 코딩테스트 연습 - 하노이의 탑 하노이 탑(Tower of Hanoi)은 퍼즐의 일종입니다. 세 개의 기둥과 이 기동에 꽂을 수 있는 크기가 다양한 원판들이 있고, 퍼즐을 시작하기 전에는 한 기둥에 원판들이 작은 것이 위에 있도록 순서대�� programmers.co.kr 일단 종이로 어떤 식으로 움직이는지 확인해도 좋겠지만.. 종이보다 컴이 편해서.. n = 2인 경우... def solution(n): tower = [[i for i in range(n, 0, -1)], [], []] print(tower) def move(f, t): #..
-
줄 서는 방법코딩 테스트/Level 3 2020. 9. 28. 20:17
줄 서는 방법 연습문제 1218명 완료 https://programmers.co.kr/learn/courses/30/lessons/12936 코딩테스트 연습 - 줄 서는 방법 n명의 사람이 일렬로 줄을 서고 있습니다. n명의 사람들에게는 각각 1번부터 n번까지 번호가 매겨져 있습니다. n명이 사람을 줄을 서는 방법은 여러가지 방법이 있습니다. 예를 들어서 3명의 사람 programmers.co.kr 전수조사(brute force). 당연히 시간 초과.정답 비교용. def solution(n, k): from itertools import permutations lines = permutations([each for each in range(1, n + 1)]) for each in range(k - 1)..
-
섬 연결하기코딩 테스트/Level 3 2020. 9. 27. 15:36
섬 연결하기 탐욕법(Greedy) 1687명 완료 최소 신장 트리(Kruskal Algorithm)로 풀 수 있는 문제입니다. 이 알고리듬을 공부하신 적 있으시다면 어렵지 않게 풀 수 있을 겁니다. https://programmers.co.kr/learn/courses/30/lessons/42861 코딩테스트 연습 - 섬 연결하기 4 [[0,1,1],[0,2,2],[1,2,5],[1,3,1],[2,3,8]] 4 programmers.co.kr 문제를 읽어보면.. 주어진 배열을 비용을 적게 드는 순서대로 연결합니다. (정렬이 필요, 탐욕 알고리듬이죠.) 이때 이미 연결된 조합은 제외해야 합니다. (Union-Find 알고리듬, 아래 코드에서는 path리스트와 find 함수로 구현) 사이클이 생기는 조합은 ..