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

Уравновешивание матрицы

Уравновешивание матрицы

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

Задана матрица M×N. Разрешается выполнять следующую операцию над ней - выбрать произвольный её элемент и либо увеличить, либо уменьшить на 1. должно быть выполнено ровно K таких операций. Необходимо добиться того, чтобы элементы в строках отличались как можно меньше друг от друга. Более того, необходимо минимизировать величину

Вхідні дані

В первой строке входного файла задаются два целых числа M и N (1M, N1000). В последующих M строках задаются по N чисел, опрееляющих матрицу A. Все эти числа целые и не превышают 10^9 по абсолютной величине. В последней строке задаётся целое число K (0K10^18).

Вихідні дані

В первой строке выходного файла выведите минимальное значение d, которого можно добиться после K операций. В последующих M строках нужно вывести получившуюся в итоге матрицу.

Приклад

Вхідні дані #1
3 4
1 2 5 7
1 -2 -6 4
0 3 7 9
5
Вихідні дані #1
7
Джерело III Міжнародна Літня школа програмування 2012 м. Севастополь