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

Діма та таблиця

Діма та таблиця

Мама подарувала хлопчику Дімі таблицю розміром \textbf{m}×\textbf{n}. Таблиця ця не проста, а особлива. Діма може вибрати три числа --- \textbf{i}, \textbf{j} та \textbf{d} (\textbf{1} ≤ \textbf{i} ≤ \textbf{n}, \textbf{1} ≤ \textbf{j} ≤ \textbf{m}, \textbf{-1000} ≤ \textbf{d} ≤ \textbf{1000}), і елемент з індексом (\textbf{i}, \textbf{j}) магічно стає рівним \textbf{d}. Діма грається зі своїм масивом, а мама час від часу задає йому питання --- який максимальний елемент, індекси якого задовільняють нерівностям \textbf{from_row} ≤ \textbf{row} ≤ \textbf{to_row} та \textbf{from_column} ≤ \textbf{column} ≤ \textbf{to_column}? Діма легко впорався з цими запитання, а чи зможете ви? \InputFile У першому рядку знаходяться три цілих числа \textbf{n}, \textbf{m} та \textbf{q} (\textbf{1} ≤ \textbf{n}, \textbf{m} ≤ \textbf{1000}, \textbf{1} ≤ \textbf{q} ≤ \textbf{10^5}) --- кількість рядків та стовбців у таблиці та сумарна кількість операцій та запитів відповідно. У наступних \textbf{n} рядках задано по \textbf{m} чисел по модулю не більших \textbf{1000} --- початковий стан таблиці. У наступних \textbf{q} рядках задано операції та запити. Перший символ у рядку може бути \textbf{=} або \textbf{?}. Якщо рядок починається з \textbf{=}, то це операція присвоювання. Далі йдуть \textbf{i}, \textbf{j} та \textbf{d}, обмеження які описано в умові. Якщо рядок починається з \textbf{?}, то це запит. Далі йдуть числа \textbf{from_row}, \textbf{to_row}, \textbf{from_column} та \textbf{to_column} (\textbf{1} ≤ \textbf{from_row} ≤ \textbf{to_row} ≤ \textbf{n}, \textbf{1} ≤ \textbf{from_column} ≤ \textbf{to_column} ≤ \textbf{n}). \OutputFile Відповіді на запити по одній у рядку.
Ліміт часу 2 секунди
Ліміт використання пам'яті 256 MiB
Вхідні дані #1
3 3 5
1 2 3
4 5 6
7 8 9
? 1 3 1 3
= 3 3 2
? 1 3 1 3
? 1 3 3 3
? 1 2 1 2
Вихідні дані #1
9
8
6
5
Автор Єгор Куліков
Джерело Зимова Школа Харків 2012