generate functionFri, 14 Apr 2023

'''Дана прямоугольная матрица размером NxM, в которой заполнены значения только в первом столбце и в первом ряду. Все остальные элементы равны нулю и мы считаем их незаполненными. Ваша задача заполнить каждый пустой элемент путем сложения соседа слева и соседа сверху. Начинать нужно с тех элементов, у которых оба указанных соседа заполнены (не равны нулю) Входные данные Программа сперва принимает в одной строке на вход два числа N и M - количество строк и столбцов в списке, а затем в N строках записаны элементы списка. Выходные данные Вывести заполненную матрицу Sample Input 1: 5 4 1 1 1 1 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 Sample Output 1: 1 1 1 1 1 2 3 4 1 3 6 10 1 4 10 20 1 5 15 35'''

def matrix(a, b): matrix = [[0] * b for i in range(a)] for i in range(a): matrix[i] = [int(x) for x in input().split()] for i in range(1, a): for j in range(1, b): if matrix[i][0] == 0 and matrix[0][j] == 0: matrix[i][j] = 0 elif matrix[i][0] == 0: matrix[i][j] = matrix[i][j - 1] elif matrix[0][j] == 0: matrix[i][j] = matrix[i - 1][j] else: matrix[i][j] = matrix[i][j - 1] + matrix[i - 1][j] for j in range(a): for i in range(b): print(matrix[j][i], end=' ') print()

Questions about programming?Chat with your personal AI assistant