알고리즘 문제 풀기/Codeup
Codeup 1506 - 2차원 배열 채우기 4(역달팽이 배열)
bug_maker
2019. 3. 26. 17:49
http://codeup.kr/problem.php?id=1506
Codeup 1506 - 2차원 배열 채우기 4(역달팽이 배열)
n = int(input())
matrix = [[0]*n for i in range(n)]
cnt = 0
offset = 0
row = n
col = n
while row > 0 and col > 0:
for i in range(offset, offset+row):
cnt += 1
matrix[i][offset] = cnt
for i in range(offset+1, offset+col):
cnt += 1
matrix[offset+row-1][i] = cnt
for i in range(offset+row-2, offset-1, -1):
cnt += 1
matrix[i][offset+col-1] = cnt
for i in range(offset+col-2, offset, -1):
cnt += 1
matrix[offset][i] = cnt
offset += 1
row -= 2
col -= 2
for i in range(0, n):
for j in range(0, n):
print(matrix[i][j], end=' ')
print()