Codeforces Round 367 (Div. 2) |
---|
Закончено |
Василий наконец-то пришёл на работу, где его ждала гора важных поручений. У Василия есть матрица из n строк и m столбцов, а также q поручений. Каждое из поручений состоит в том, чтобы поменять местами два прямоугольника в матрице.
Для каждого поручения Василию известны числа ai, bi, ci, di, hi, wi, где, ai это номер строки верхнего левого угла первого прямоугольника запроса, а bi это номер его столбца, ci это номер строки верхнего левого угла второго прямоугольника, di — номер его столбца, а hi и wi это высота и ширина прямоугольников соответственно.
Гарантируется, что прямоугольники в одном запросе не пересекаются и не касаются, то есть никакая клетка не принадлежит сразу обоим прямоугольникам, и никакие две клетки, принадлежащие разным многоугольникам, не являются соседними по стороне. Тем не менее, прямоугольники запроса могут иметь общий угол.
Василия интересует, как будет выглядеть матрица после выполнения всех поручений.
В первой строке входных данных записаны три целых числа n, m и q (2 ≤ n, m ≤ 1000, 1 ≤ q ≤ 10 000) — количество строк и столбцов в матрице, а также количество поручений, которые требуется выполнить Василию.
В следующих n строках содержится по m целых чисел vi, j (1 ≤ vi, j ≤ 109) — изначальные значения ячеек в матрице.
В каждой из следующих q строк содержится по шесть целых чисел — ai, bi, ci, di, hi, wi (1 ≤ ai, ci, hi ≤ n, 1 ≤ bi, di, wi ≤ m).
Выведите n строк по m чисел в каждой — матрицу после всех изменений.
4 4 2
1 1 2 2
1 1 2 2
3 3 4 4
3 3 4 4
1 1 3 3 2 2
3 1 1 3 2 2
4 4 3 3
4 4 3 3
2 2 1 1
2 2 1 1
4 2 1
1 1
1 1
2 2
2 2
1 1 4 1 1 2
2 2
1 1
2 2
1 1
Название |
---|