https://www.codetree.ai/missions/5/problems/snail-number-square/description
import sys
input = sys.stdin.readline
# 0 1 2 3 = 오 아 왼 위
d = 0
x = 0
y = 0
dy = [1, 0, -1, 0]
dx = [0, 1, 0, -1]
n, m = map(int, input().split(" "))
graph = [[0 for _ in range(m)] for _ in range(n)]
graph[x][y] = 1
for i in range(2, n* m+1):
nx = x + dx[d]
ny = y + dy[d]
# 방향과 방문한 값인지 확인
if not(0<= nx and nx < n and 0<= ny and ny <m) or graph[nx][ny] != 0:
d = (d+1) % 4
x = x + dx[d]
y = y + dy[d]
graph[x][y] = i
for row in graph:
print(*row)
728x90
반응형
'🔻PS > Codetree' 카테고리의 다른 글
[Codetree] 되돌아오기 2 Python (0) | 2024.07.29 |
---|---|
[Codetree] 되돌아오기 Python (0) | 2024.07.29 |
[Codetree] 작은 구슬의 이동 Python (0) | 2024.07.29 |
[Codetree] 1이 3개 이상 있는 위치 Python (0) | 2024.07.29 |
[Codetree] 문자에 따른 명령 2 Python (0) | 2024.07.29 |