[old] Determinant

[old] Determinant

В линейной алгебре, детерминант - это значение характеризующее содержание квадратной матрицы. Он может быть вычислен различными способами на основе значений элементов матрицы.

Детерминант матрицы A обозначается, как det(A), det A, или |A|. В случае если матрица написана полностью, то детерминант обозначается с помощью вертикальных линий слева и справа матрицы вместо скобок.

Есть различные способы вычисления детерминанта квадратной матрицы A. Один из простейших способов - использовать столбцы матрицы. Матрицу размером N×N можно записать как вектор столбцов:

A = [a1, a2, ..., an]

где каждый элемент есть вектор размером n, то детерминант можно подсчитать как:

det[a1, ..., b*aj+c*v, ..., an] = b*det(A)+c*det[a1, ..., v, ..., an]
det[a1, ..., aj, aj+1, ..., an] = -det[a1, ..., aj+1, aj, ..., an]
det(I) = 1

Где b и c числовые значения, v вектор размером N и I единичная матрица. Также, детерминант может быть вычислен с использованием рекурсивной формулы.

Входные данные: Квадратная матрица, как список (list) списков с целыми числами (int).

Выходные данные: Детерминант матрицы, как целое число (int).

Примеры:

determinant([[4,3], [6,3]]) == -6

determinant([[1, 3, 2],
         [1, 1, 4],
...
You should be an authorized user in order to see the full description and start solving this mission.