반응형
https://www.acmicpc.net/problem/1890
bfs, dfs 둘 다 시간초과 나는 걸 보고 DP로 풀어야겠다고 직감함.
풀이 접근방법은 예전에 풀었던 '등굣길'과 거의 동일하다.
table[y][x] = "현재 위치까지 도달할 수 있는 방법의 수" 라고 정의한다면
처음에 주어진 2d array를 maps라고 정의할 경우 maps[y][x] = 현재 위치에서 다음 위치로 점프할 수 있는 거리.
즉 점화식은
1. table[y + maps[y][x]][x] = table[y + maps[y][x]][x] + table[y][x] - 아래로 이동할 경우
2. table[y][x + maps[y][x]] = table[y][x + maps[y][x]] + table[y][x] - 오른쪽으로 이동할 경우
두 가지가 된다.
반응형
'프로그래밍 > 코딩테스트 문제풀이' 카테고리의 다른 글
[Python] Hackerrank. Find the Nearest Clone (Medium) (0) | 2020.03.09 |
---|---|
[Python] 프로그래머스. 2018 카카오 recruit - 프렌즈4블록 (Level 2) (0) | 2020.03.07 |
[Python] 백준 14500. 테트로미노 (0) | 2020.03.04 |
[Python] 프로그래머스. 2018 카카오 recruit - 압축 (Level 2) (0) | 2020.03.03 |
[Python] 백준 11724. 연결 요소의 개수 (0) | 2020.03.02 |