Автор: | Завгороднев А.А. | Ограничение времени: | 4 сек | |
Входной файл: | Стандартный вход | Ограничение памяти: | 256 Мб | |
Выходной файл: | Стандартный выход |
У вас есть квадратная матрица A размера n × n.
Также у вас есть k матриц Bk тоже размера n × n.
От вас требуется найти такие две матрицы, произведение которых даст матрицу A (если таких матриц не существует, выведите -1). Эти матрицы должны иметь различные индексы.
Матрицы перемножаются по принципу строка на столбец. Результат кладётся в клетку их пересечения.
Рассмотрим это на примере матриц: A2 × 2 = [a11 a12a21 a22] и B2 × 2 = [b11 b12b21 b22]. A × B = C.
C2 × 2 = [a11 * b11 + a12 * b21 a11 * b21 + a12 * b22a21 * b11 + a22 * b21 a21 * b21 + a22 * b22].
Общая формула выглядит так: cij = ai1 b1j + ... + ain bnj.
В первой строке находятся два целых числа k и n - количество матриц и их размер.
В следующих строках описываются матрицы Bk. Матрицы разделены пустыми строкам. Каждая строка матрицы располагается в новой строке. Элементы матрицы в строке разделены пробелами.
Далее описывается матрица A.
Элементы матриц - целые числа.
Выведите -1, если не нашлась подходящая пара матриц.
Или два различных индекса найденных матриц в порядке возрастания в ином случае.
2 ≤ k ≤ 30
2 ≤ n ≤ 100
− 103 ≤ bk ≤ 103
− 109 ≤ ak ≤ 109
№ | Стандартный вход | Стандартный выход |
---|---|---|
1 |
|
|
2 |
|
|