[프로그래머스 lv3] 등굣길 풀이
해설오른쪽과 아래쪽으로 이동하고, 특정 지점을 향하는 문제는 dp의 전형적인 유형이다. dfs(int x, int y) 를 (x, y)에서 (n, m)까지 이동하는 경우의 수라고 정의할 때 이동할 수 있는 방법은 두 가지가 있다.1) 오른쪽 방향: (x, y+1)에서 (n, m)으로 이동하는 방법2) 아래쪽 방향: (x+1, y)에서 (n, m)으로 이동하는 방법따라서, dfs(x, y)는 dfs(x, y+1) + dfs(x+1, y) 로 정의할 수 있다. 이때, 메모이제이션 없이 dfs를 돌려버리면 TLE가 발생할 가능성이 높으므로 이미 구한 값을 저장해놓고 해당 결과가 필요할 때마다 찾아 쓰는 동적프로그래밍 방법을 사용하자.dfs(int x, int y)가 실행되었을 때, 그 결과가 이미 memo[x..
2022. 9. 8.