코딩 테스트/Level 3
-
멀리 뛰기 *코딩 테스트/Level 3 2020. 9. 10. 15:11
멀리 뛰기연습문제 3182명 완료https://programmers.co.kr/learn/courses/30/lessons/12914 코딩테스트 연습 - 멀리 뛰기효진이는 멀리 뛰기를 연습하고 있습니다. 효진이는 한번에 1칸, 또는 2칸을 뛸 수 있습니다. 칸이 총 4개 있을 때, 효진이는 (1칸, 1칸, 1칸, 1칸) (1칸, 2칸, 1칸) (1칸, 1칸, 2칸) (2칸, 1칸, 1칸) (2칸, 2��programmers.co.kr2 * n 타일링과 같은 문제이다. https://comdoc.tistory.com/entry/6-2-x-n-%ED%83%80%EC%9D%BC%EB%A7%81?category=883209def solution(n): dp = [0, 1, 2] if n
-
2 x n 타일링 *코딩 테스트/Level 3 2020. 9. 9. 12:51
2 x n 타일링연습문제 3293명 완료https://programmers.co.kr/learn/courses/30/lessons/12900 코딩테스트 연습 - 2 x n 타일링가로 길이가 2이고 세로의 길이가 1인 직사각형모양의 타일이 있습니다. 이 직사각형 타일을 이용하여 세로의 길이가 2이고 가로의 길이가 n인 바닥을 가득 채우려고 합니다. 타일을 채울 때는 ��programmers.co.kr동적계획법 문제이다. 처음 접하면 점화식을 세우는 것이 참 어렵다.다음 설명을 참고하시기 바라며... https://wonillism.github.io/programmers/Programmers-2xn-tiling/ 문제를 이해했다면 코딩은 어렵지 않을 것이다...다양한 방법으로 피보나치 수열을 코딩하는 법을 ..
-
정수 삼각형코딩 테스트/Level 3 2020. 9. 8. 12:00
정수 삼각형 동적계획법(Dynamic Programming) 3433명 완료https://programmers.co.kr/learn/courses/30/lessons/43105 코딩테스트 연습 - 정수 삼각형[[7], [3, 8], [8, 1, 0], [2, 7, 4, 4], [4, 5, 2, 6, 5]] 30programmers.co.kr위에서 부터 아래로 내려오면서 숫자를 더한다. 누적합. 다만 경우의 수가 2개인 경우 max 함수를 사용해 최대값을 선택을 해야 한다. 최종적으로 마지막 줄에서 최대값을 찾으면 끝.def solution(triangle): for y in range(1, len(triangle)): for x in range(len(triangle[y])): ..
-
단어변환코딩 테스트/Level 3 2020. 9. 7. 11:55
단어 변환 깊이/너비 우선 탐색(DFS/BFS) 4024명 완료https://programmers.co.kr/learn/courses/30/lessons/43163 코딩테스트 연습 - 단어 변환두 개의 단어 begin, target과 단어의 집합 words가 있습니다. 아래와 같은 규칙을 이용하여 begin에서 target으로 변환하는 가장 짧은 변환 과정을 찾으려고 합니다. 1. 한 번에 한 개의 알파벳만 바꿀 수programmers.co.krdef solution(begin, target, words): return 0 if target not in words else match({begin}, 0, target, words)def match(last_set, level, target, word..
-
타일 장식물코딩 테스트/Level 3 2020. 9. 6. 11:49
타일 장식물 동적계획법(Dynamic Programming) 4496명 완료 https://programmers.co.kr/learn/courses/30/lessons/43104 코딩테스트 연습 - 타일 장식물 대구 달성공원에 놀러 온 지수는 최근에 새로 만든 타일 장식물을 보게 되었다. 타일 장식물은 정사각형 타일을 붙여 만든 형태였는데, 한 변이 1인 정사각형 타일부터 시작하여 마치 앵무조개�� programmers.co.kr 이게 왜 level 3인지는 모르겠지만... def solution(n): arr = [0, 1, 1] if n < 3: return arr[n] * 4 + arr[n - 1] * 2 for i in range(2, n): arr[0], arr[1] = arr[1], arr[2..
-
네트워크코딩 테스트/Level 3 2020. 9. 5. 11:02
네트워크 깊이/너비 우선 탐색(DFS/BFS) 5703명 완료https://programmers.co.kr/learn/courses/30/lessons/43162 코딩테스트 연습 - 네트워크네트워크란 컴퓨터 상호 간에 정보를 교환할 수 있도록 연결된 형태를 의미합니다. 예를 들어, 컴퓨터 A와 컴퓨터 B가 직접적으로 연결되어있고, 컴퓨터 B와 컴퓨터 C가 직접적으로 연결되어 있��programmers.co.kr 파이썬(python)def solution(n, computers): networks = [] for i in range(n): networks.append({i}) for i1 in range(n): for i2 in range(i1+1, n): ..
-
베스트앨범코딩 테스트/Level 3 2020. 9. 4. 11:25
베스트앨범 해시 6524명 완료 https://programmers.co.kr/learn/courses/30/lessons/42579 코딩테스트 연습 - 베스트앨범스트리밍 사이트에서 장르 별로 가장 많이 재생된 노래를 두 개씩 모아 베스트 앨범을 출시하려 합니다. 노래는 고유 번호로 구분하며, 노래를 수록하는 기준은 다음과 같습니다. 속한 노래가 ��programmers.co.kr 파이썬(python)딕셔너리를 잘 이용하면 쉽게 풀 수 있는 문제입니다. 딕셔너리에 초기값을 설정하는 것은 꽤 귀찮은 일입니다. 이럴 때 defaultdict를 사용할 수 있습니다.from collections import defaultdictdef solution(genres, plays): answer = [] ..