print2489. Двумерные массивы-11

printДвумерные массивы-11

Ограничения: время – 200ms/500ms, память – 64MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

Дана матрица `a` размером `n\ times\ n`.
Напишите программу для нахождения обратной матрицы методом Жордано-Гаусса.
По методу Жордано-Гаусса сначала к матрице `n\ times\ n` дописывается единичная матрица размером `n\ times\ n`.
Далее над полученным массивом `n\ times\ (2*n)` выполняются следущие шаги для `k` от 0 от `n-1`:
1. Меняем местами `k`-ю строку и строку с максимальным по абсолютному значению элементом в `k`-м столбце среди строк `k`-й по `n-1`-ю включительно.
2. Делим элементы `k`-й строки на значение `a_{k,k}`.
3. Вычитаем из всех строк, кроме `k`-й строки, элементы `k`-й строки, умноженные на `a_{i,k}`, где `i` – номер обрабатываемой строки.
В последних `n` столбцах массива после завершения алгоритма получается обратная матрица.
Первая строка ввода содержит одно число `n` (`1\ ≤\ n\ ≤\ 10`). Следующие `n` строк содержат `n` чисел в диапазоне от –100 до 100.
Вывести `n` строк, содержащих по `n` чисел – элементы обратной матрицы с точностью `10^{-6}`.

Пример ввода

3
1 1 1
4 2 1
9 3 1

Пример вывода

0.5 -1 0.5
-2.5 4 -1.5
3 -3 1
Для решения этой задачи используйте решение предыдущей задачи!
loading