Помогите со спиралью матрицы 1 условие не совпадает в моем коде. Python
n, m = map(int, input().split())
matrix = [[0] * m for _ in range(n)]
num = 1
top_matrix = 0
bottom_matrix = n
left_matrix = 0
right_matrix = m
while num < n * m + 1:
for i in range(left_matrix, right_matrix):
matrix[top_matrix][i] = num
num += 1
top_matrix += 1
for i in range(top_matrix, bottom_matrix):
matrix[i][right_matrix -1] = num
num += 1
right_matrix -= 1
for i in range(right_matrix -1, left_matrix -1, -1):
matrix[bottom_matrix - 1][i] = num
num += 1
bottom_matrix -= 1
for i in range(bottom_matrix -1, top_matrix -1, -1):
matrix[i][left_matrix] = num
num += 1
left_matrix += 1
for i in range(n):
for j in range(m):
print(str(matrix[i][j]).ljust(3), end="")
print()
Не могу понять как добавить условие при вводе значений равных (1) единицы матрица расползается, то есть:
ввод: 1 7 к примеру мне выдает:
13 12 11 10 9 8 7
или 9 1 результат:
1
16
15
14
13
12
11
10
9
как это исправить? Подскажите пожалуйста