알고리즘
백준) 숫자판 점프
1일1공부실천하자
2023. 2. 21. 21:03
https://www.acmicpc.net/problem/2210
2210번: 숫자판 점프
111111, 111112, 111121, 111211, 111212, 112111, 112121, 121111, 121112, 121211, 121212, 211111, 211121, 212111, 212121 이 가능한 경우들이다.
www.acmicpc.net
arr = []
numbers= []
for i in range(5):
a = list(map(str,input().split()))
arr.append(a)
dx = [0,0,1,-1]
dy = [-1,1,0,0]
def dfs(x,y,string):
if len(string) == 6:
if string not in numbers:
numbers.append(string)
return
for i in range(4):
nx = dx[i] + x
ny = dy[i] + y
if (0 <= nx < 5) and (0 <= ny < 5):
dfs(nx,ny,string + arr[nx][ny])
for i in range(5):
for j in range(5):
dfs(i,j,arr[i][j])
print(len(numbers))
전형적인 dfs 알고리즘 문제이다.