Вызов
Дано девять чисел, в a, b, c, d, e, f, g, h, i
качестве входных данных которые соответствуют квадратной матрице:
Найти обратную матрицу и вывести ее составляющие.
Обратная матрица
Обратная матрица 3 на 3 подчиняется следующему уравнению:
И можно рассчитать как:
Где - матрица кофакторов:
И - транспонирование C :
А также является определителем M :
Работал пример
Например, скажем, вход 0, -3, -2, 1, -4, -2, -3, 4, 1
. Это соответствует матрице:
Во-первых, давайте вычислим то, что известно как определитель, используя формулу выше:
Далее посчитаем матрицу кофакторов:
Затем нам нужно транспонировать (перевернуть строки и столбцы), чтобы получить C T :
Наконец, мы можем найти обратное как:
Таким образом, результат будет 4, -5, -2, 5, -6, -2, -8, 9, 3
.
правила
Данная матрица всегда будет иметь обратную (т.е. неособую). Матрица может быть самообратной
Данная матрица всегда будет матрицей 3 на 3 с 9 целыми числами.
Числа на входе всегда будут целыми числами в диапазоне
Нецелые компоненты матрицы могут быть представлены в виде десятичной дроби или дроби
Примеры
Input > Output
1, 0, 0, 0, 1, 0, 0, 0, 1 > 1, 0, 0, 0, 1, 0, 0, 0, 1
0, -3, -2, 1, -4, -2, -3, 4, 1 > 4, -5, -2, 5, -6, -2, -8, 9, 3
1, 2, 3, 3, 1, 2, 2, 1, 3 > -1/6, 1/2, -1/6, 5/6, 1/2, -7/6, -1/6, -1/2, 5/6
7, 9, 4, 2, 7, 9, 3, 4, 5 > -1/94, -29/94, 53/94, 17/94, 23/94, -55/94, -13/94, -1/94, 31/94
выигрыш
Самый короткий код в байтах побеждает.