Для покраски двумерного массива по краям можно использовать следующий алгоритм:
Пройти по всем элементам первой и последней строки и установить их в заданное значение.
Пройти по всем элементам первого и последнего столбца (кроме уже обработанных элементов в первой и последней строке) и установить их в заданное значение.
Вот пример кода на Python, который выполняет эту задачу:
def paint_edges(matrix, value):
if not matrix or not matrix[0]:
return matrix
rows = len(matrix)
cols = len(matrix[0])
# Красим первую и последнюю строку
for col in range(cols):
matrix[0][col] = value
matrix[rows - 1][col] = value
# Красим первый и последний столбец
for row in range(rows):
matrix[row][0] = value
matrix[row][cols - 1] = value
return matrix
# Пример использования
matrix = [
[0, 0, 0, 0],
[0, 0, 0, 0],
[0, 0, 0, 0],
[0, 0, 0, 0]
]
painted_matrix = paint_edges(matrix, 2)
for row in painted_matrix:
print(row)
Вывод:
[2, 2, 2, 2]
[2, 0, 0, 2]
[2, 0, 0, 2]
[2, 2, 2, 2]
Этот код создает двумерный массив, заполненный нулями, и затем красит его края в заданное значение (в данном случае 2).
2222
2002
2002
2222