CodingTest/SW Expert Academy
[ SW Expert Academy ] 1954. 달팽이 숫자
EEOOOO
2022. 11. 4. 17:50
아.. 나선형 문제 분명 풀어봤는데..
한 큐에 못 풀었다.. 쏘쌛..
그래도 한 번 해봤다고 힌트 슬쩍 보고 바로 구현 가능했다. 다음에 비슷한 문제 나오면 맞추길🙏
T = int(input())
# 여러개의 테스트 케이스가 주어지므로, 각각을 처리합니다.
dx = [0, 1, 0, -1]
dy = [1, 0, -1, 0]
for test_case in range(1, T + 1):
# ///////////////////////////////////////////////////////////////////////////////////
n = int(input())
snail = [[0] * n for _ in range(n)]
x, y = 0, 0
direction = 0
for k in range(1, n*n+1):
snail[x][y] = k
if not (0 <= x + dx[direction] < n) or not (0 <= y + dy[direction] < n) or (snail[x + dx[direction]][y + dy[direction]] != 0):
direction = (direction+1)%4
x += dx[direction]
y += dy[direction]
print('#{}'.format(test_case))
for s in snail:
print(" ".join(list(map(str, s))))
# ///////////////////////////////////////////////////////////////////////////////////
약간 황당한 일은 3문제째인데 아직 출력 정확성 실패로 자꾸 오답처리 받은 뒤 수정하고나서야 pass받는 중이다 😑😶
저 마지막에 배열을 문자열 처리하는거
" ".join(배열)이 아니라 *배열 로 하면 더 깔끔한데 순간 잊었다. 리마인드하고 가기.