종만북 [Algorithm] 🦘외발 뛰기 0. 문제 땅따먹기를 하다 질린 재하와 영훈이는 땅따먹기의 변종인 새로운 게임을 하기로 했습니다. 이 게임은 그림과 같이 n*n 크기의 격자에 각 1부터 9 사이의 정수를 쓴 상태로 시작합니다. 각 차례인 사람은 맨 왼쪽 윗 칸에서 시작해 외발로 뛰어서 오른쪽 아래 칸으로 내려가야 합니다. 이 때 각 칸에 적혀 있는 숫자만큼 오른쪽이나 아래 칸으로 움직일 수 있으며, 중간에 게임판 밖으로 벗... 종만북algospot동적계획법algospot 알고스팟 : 울타리 잘라내기 판자의 높이를 배열로 받아서 h[] 로 처리하고 l번 판자부터 r 번 판자까지 잘라내서 사각형을 만든다고 하면 (l-r+1)\times{min_{i=l}^{r}}h[i] (l−r+1)×mini=lr h[i] 의 식을 얻어낼 수 있다. 분할 정복 알고리즘의 설계 n개의 판자를 절반으로 나눠 두 개의 부분 문제로 바꾸자. 우리가 찾는 최대 직사각형은 다음 3가지 중 하나에 속할 것이다. 가장 큰... 재귀알고스팟문해전종만북문해전 [알고리즘] Intro 문제의 본질을 어떻게 생각하냐에 따라 문제를 쉽게 만들 수 있음 형태 혹은 목표가 비슷하거나 관련된 문제를 풀어봤었다면 이전과 비슷하게 접근 방법일 거라 기대할 수 있다. 하지만 해당 알고리즘을 동작 과정과 원리를 완전히 이해해야지 비슷한 문제에대해서 응용할 수 있다. 이후에 소개될 방법 중 하나인 무식하게 풀기의 방식처럼 시간과 공간 제약을 생각지 않고 문제를 해결할 가장 단순한 알고리즘을... 종만북종만북 <종만북> 08. 동적계획법_비대칭 타일링 (Asymmetric Tiling) c++ 먼저 비대칭 타일링 문제를 풀기 위해서는 앞에서 공부했던 타일링 방법의 수 세는 알고리즘을 복습할 필요가 있다. 2xn 사각형을 채우는 방법들은 맨 오른 쪽이 어떻게 채워져 있느냐로 나눌 수 있다. a는 마지막 타일의 가로길이가 1인 경우, b와 c는 마지막 타일의 가로 길이가 2인 경우이다. a와 c는 본질적으로 동일 하기 때문에 tiling(n)=1xtiling(n-1) + 1xtilin... Tiling종만북algorithmalgospotdynamicprogrammingTiling 알고스팟 : 게임판 덮기 링크 : 문제 읽기 자유롭게 회전 가능. 겹치거나 검은 칸을 덮거나 게임판 밖으로 나가서는 안된다. 게임판이 주어졌을 때 덮을 수 있는 경우의 수. 흰 칸이 3의 배수여야 겹치지 않고 덮을 수 있다. 각 칸마다 모두 4가지의 방법으로 놓을 수 있는데 제한으로 인해 4 이하의 방법으로 블록을 놓을 수 있다. L 블럭을 구성하는 3칸의 상대적 위치 (dy, dx)의 목록 delta = 1이면 덮... 종만북알고스팟알고리즘벡터벡터
[Algorithm] 🦘외발 뛰기 0. 문제 땅따먹기를 하다 질린 재하와 영훈이는 땅따먹기의 변종인 새로운 게임을 하기로 했습니다. 이 게임은 그림과 같이 n*n 크기의 격자에 각 1부터 9 사이의 정수를 쓴 상태로 시작합니다. 각 차례인 사람은 맨 왼쪽 윗 칸에서 시작해 외발로 뛰어서 오른쪽 아래 칸으로 내려가야 합니다. 이 때 각 칸에 적혀 있는 숫자만큼 오른쪽이나 아래 칸으로 움직일 수 있으며, 중간에 게임판 밖으로 벗... 종만북algospot동적계획법algospot 알고스팟 : 울타리 잘라내기 판자의 높이를 배열로 받아서 h[] 로 처리하고 l번 판자부터 r 번 판자까지 잘라내서 사각형을 만든다고 하면 (l-r+1)\times{min_{i=l}^{r}}h[i] (l−r+1)×mini=lr h[i] 의 식을 얻어낼 수 있다. 분할 정복 알고리즘의 설계 n개의 판자를 절반으로 나눠 두 개의 부분 문제로 바꾸자. 우리가 찾는 최대 직사각형은 다음 3가지 중 하나에 속할 것이다. 가장 큰... 재귀알고스팟문해전종만북문해전 [알고리즘] Intro 문제의 본질을 어떻게 생각하냐에 따라 문제를 쉽게 만들 수 있음 형태 혹은 목표가 비슷하거나 관련된 문제를 풀어봤었다면 이전과 비슷하게 접근 방법일 거라 기대할 수 있다. 하지만 해당 알고리즘을 동작 과정과 원리를 완전히 이해해야지 비슷한 문제에대해서 응용할 수 있다. 이후에 소개될 방법 중 하나인 무식하게 풀기의 방식처럼 시간과 공간 제약을 생각지 않고 문제를 해결할 가장 단순한 알고리즘을... 종만북종만북 <종만북> 08. 동적계획법_비대칭 타일링 (Asymmetric Tiling) c++ 먼저 비대칭 타일링 문제를 풀기 위해서는 앞에서 공부했던 타일링 방법의 수 세는 알고리즘을 복습할 필요가 있다. 2xn 사각형을 채우는 방법들은 맨 오른 쪽이 어떻게 채워져 있느냐로 나눌 수 있다. a는 마지막 타일의 가로길이가 1인 경우, b와 c는 마지막 타일의 가로 길이가 2인 경우이다. a와 c는 본질적으로 동일 하기 때문에 tiling(n)=1xtiling(n-1) + 1xtilin... Tiling종만북algorithmalgospotdynamicprogrammingTiling 알고스팟 : 게임판 덮기 링크 : 문제 읽기 자유롭게 회전 가능. 겹치거나 검은 칸을 덮거나 게임판 밖으로 나가서는 안된다. 게임판이 주어졌을 때 덮을 수 있는 경우의 수. 흰 칸이 3의 배수여야 겹치지 않고 덮을 수 있다. 각 칸마다 모두 4가지의 방법으로 놓을 수 있는데 제한으로 인해 4 이하의 방법으로 블록을 놓을 수 있다. L 블럭을 구성하는 3칸의 상대적 위치 (dy, dx)의 목록 delta = 1이면 덮... 종만북알고스팟알고리즘벡터벡터