Skip to content

Commit d403428

Browse files
committed
[BOJ] #16173. 점프왕 쩰리 (Small) / 실버4 / 44분 / 성공
1 parent c5f50ed commit d403428

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
import sys
2+
from collections import deque
3+
input = sys.stdin.readline
4+
5+
def bfs(x, y, n):
6+
queue = deque()
7+
queue.append((x, y)) # 시작점 추가
8+
visited[x][y] = True # 초기 방문 처리
9+
10+
while queue:
11+
x, y = queue.popleft()
12+
for dx, dy in [(0, jump_game[x][y]), (jump_game[x][y], 0)]: # 아래 (0, jump), 오른쪽 (jump, 0)
13+
nx, ny = x + dx, y + dy # 현재 위치에서 칸 수만큼 이동
14+
# 맵 범위 안에 있고, 아직 방문하지 않은 경우
15+
if 0 <= nx < n and 0 <= ny < n and not visited[nx][ny]:
16+
if jump_game[nx][ny] == -1: # 도착 지점에 도달하면
17+
return True
18+
visited[nx][ny] = True
19+
queue.append((nx, ny)) # 다음 이동 지점 추가
20+
21+
return False
22+
23+
# 입력 처리
24+
n = int(input())
25+
jump_game = []
26+
visited = [[False for _ in range(n)] for _ in range(n)]
27+
for _ in range(n):
28+
temp = list(map(int, input().split()))
29+
jump_game.append(temp)
30+
31+
# BFS 탐색
32+
if bfs(0, 0, n):
33+
print("HaruHaru")
34+
else:
35+
print("Hing")

0 commit comments

Comments
 (0)