Программа должна принимать целочисленную матрицу размером RxC
и целое число K
в качестве входных данных. Программа должна вывести все целые числа от левого нижнего до верхнего right diagonal
в каждой подматрице KxK
без каких-либо перекрытие заданной матрицы
ПРИМЕЧАНИЕ. Значения R и C ara всегда кратны K
Пример:
Input:
4 4
1 2 3 4
5 6 7 9
8 5 4 1
6 9 0 5
2
Output:
5 2
7 4
6 5
0 1
My Код:
row , col = map(int,input().split())
mat = [list(map(int,input().split())) for i in range(row)]
k = int(input())
temp = k
# To store the right diagonal elements of all the sub matrices
right_diagonal_elements = []
for i in range(row):
te =temp
# Iterating through the matrix in such a way
#that it appends only the k th element ,
#then k-1, and so on til the first element
while te<=col:
# It appends the right diagonal element but in a different order
right_diagonal_elements.append(mat[i][te-1])
te+=k
if temp == 1:
temp = k
continue
temp -= 1
В этом коде мой код получает все правильные диагональные элементы, но я застрял в том, как организовать его таким образом, чтобы он получал заданный результат
Right_diagonal_elements имеет [2, 4, 5, 7, 5, 1, 6, 0]
для примера выше. Я застрял в том, как расположить эти элементы в списке, чтобы получить результат в примере