Защита королевства
Теодор реализует новую стратегию игры "Оборона Царства". На каждом уровне игрок защищает королевство, которое представлено прямоугольной сеткой ячеек. В некоторых клетках игрок строит арбалетные башни. Башня защищает все клетки в той же строке и том же столбце. Никакие две башни не находятся на одной строке или столбце.
Штрафом положения является количество клеток в крупнейшем незащищенном прямоугольнике. Например, положение, показанное на рисунке имеет штраф 12.
Помогите Теодору написать программу, вычисляющую штраф в заданной позиции.
Входные данные
Первая строка содержит три целых числа: w - ширина сетки, h - высота сетки и n - количество арбалетных башен (1 ≤ w, h ≤ 40000; 0 ≤ n ≤ min(w, h)).
Каждая из следующих n строк содержит два целых числа x[i]
и y[i]
- координаты клетки с башней (1 ≤ x[i]
≤ w; 1 ≤ y[i]
≤ h).
Выходные данные
Вывести одно число - количество клеток в наибольшем прямоугольнике, не защищенном башнями.