https://www.acmicpc.net/problem/1890
1890번: 점프
첫째 줄에 게임 판의 크기 N (4 ≤ N ≤ 100)이 주어진다. 그 다음 N개 줄에는 각 칸에 적혀져 있는 수가 N개씩 주어진다. 칸에 적혀있는 수는 0보다 크거나 같고, 9보다 작거나 같은 정수이며, 가장
www.acmicpc.net
처음에 문제를 이해 못해서... 결국 예제 하나하나 그려보고나서야 이해했다...ㅎㅎ
예제 따라 저렇게 3가지 경우의 수가 나오므로 답이 3이다.
간단한 DFS/BFS 정석적인 문제 같은데 또 새로운 풀이의 DFS/BFS 문제여서 고민했다. (많이 많이 풀어보는 수 밖에......)
갈 수 있는 방향이 목표지점까지로만 갈 수 있도록 제한되어있다. 사이클은 안된다.
오른쪽과 아래쪽으로만 움직일 수 있으므로 N*N 판 반복문에서 현재좌표를 이용해 visited배열에 카운트하면 된다.
파이썬 코드
#1890_점프
import sys
input = sys.stdin.readline
N = int(input())
game=[list(map(int,input().split())) for _ in range(N)]
visited = [[0]*N for _ in range(N)]
visited[0][0]=1
for i in range(N):
for j in range(N):
if i==N-1 and j==N-1: #(N,N) 종착
print(visited[i][j])
break
cur = game[i][j]
print(cur)
if j+cur < N: #right
visited[i][j+cur] += visited[i][j]
if i+cur < N: #down
visited[i+cur][j] += visited[i][j]
'알고리즘 > 백준(BOJ)' 카테고리의 다른 글
[백준/알고리즘] #5622: 다이얼 [파이썬(python)/문자열] (0) | 2021.10.04 |
---|---|
[백준/알고리즘] #18352: 특정 거리의 도시 찾기 [파이썬(python)/DFS/BFS] (0) | 2021.10.04 |
[백준/알고리즘] #2667: 단지붙이기 [파이썬(python)/DFS/BFS] (0) | 2021.10.04 |
[백준/알고리즘]#4963: 섬의 개수 [파이썬(python)/그래프/DFS/BFS] (0) | 2021.10.02 |
[백준/알고리즘]#1303: 전쟁-전투 [파이썬(python)/그래프/DFS/BFS] (0) | 2021.10.02 |