๋ฐฑ์ค€ 2210 ์ˆซ์žํŒ๊ด€๋ฆฌ ํŒŒ์ด์ฌ

2022. 12. 29. 00:16ใ†๐Ÿ”ฑ Algorithm/BFS DFS

 

2210๋ฒˆ: ์ˆซ์žํŒ ์ ํ”„

111111, 111112, 111121, 111211, 111212, 112111, 112121, 121111, 121112, 121211, 121212, 211111, 211121, 212111, 212121 ์ด ๊ฐ€๋Šฅํ•œ ๊ฒฝ์šฐ๋“ค์ด๋‹ค.

www.acmicpc.net

 

 

 

dfs ํผ ๋ฏธ์ณค๋‹ค

result = set()
dx = [1, -1, 0, 0]
dy = [0, 0, 1, -1]

res = [list(map(str, input().split())) for _ in range(5)]


def dfs(r_, c_, tmp):
    if len(tmp) == 6:
        result.add(tmp)
        return

    for i in range(4):
        nx = c_ + dx[i]
        ny = r_ + dy[i]
        if 0 <= ny < 5 and 0 <= nx < 5:
            dfs(ny, nx, tmp + res[ny][nx])


for r in range(5):
    for c in range(5):
        dfs(r, c, res[r][c])
print(len(result))

'๐Ÿ”ฑ Algorithm > BFS DFS' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

๋ฐฑ์ค€ ์ ํ”„ ์ ํ”„ 11060 ํŒŒ์ด์ฌ  (0) 2022.03.11
๋ฐฑ์ค€ 7569 ํŒŒ์ด์ฌ  (0) 2022.01.26