eolymp
bolt
Спробуйте наш новий інтерфейс для відправки розв'язків
Задачі

Множення матриць

Множення матриць

Ліміт часу 1 секунда
Ліміт використання пам'яті 128 MiB

Нехай задано дві прямокутні матриці A та B розмірності m × n та n × q відповідно:

prb1482-1

Тоді матриця C розмірності m × q називається їх добутком:

prb1482-2

де:

prb1482-3

Операція множення двох матриць допустима лише у тому випадку, коли кількість стовбців у першому множнику дорівнює кількості рядків у другому; у цьому випадку кажуть, що форма матриць узгоджена.

Задано дві матриці A та B. Знайти їх добуток.

Вхідні дані

У першому рядку задано два натуральних числа n[a] та m[a] - розмірність матриці A. У наступних n[a] рядках задано по m[a] чисел - елемент a[ij] матриці A. У (n[a] + 2)-му рядку задано два натуральних числа n[b] та m[b] - розмірність матриці B. У наступних n[b] рядках задано по m[b] чисел - елементи b[ij] матриці B. Розмірність матриць не перевищує 100 × 100, усі елементи матриць цілі числа, які не перевищують за модулем 100.

Вихідні дані

У першому рядку вивести розмірність результуючої матриці C: n[с] та m[c]. У наступних n[с] рядках вивести через пропуск по m[c] чисел - відповідні елементи c[ij] матриці C. Якщо множити матриці не можна у першому і єдиному рядку вивести число -1.

Приклад

Вхідні дані #1
2 3
1 3 4
5 -2 3
3 3
1 3 2
2 1 3
0 -1 1
Вихідні дані #1
2 3
7 2 15
1 10 7
Вхідні дані #2
2 3
10 12 31
23 11 17
3 4
0 2 1 4
3 9 2 4
-5 4 2 5
Вихідні дані #2
2 4
-119 252 96 243
-52 213 79 221