Алхимия
Ограничения: время – 2s/4s, память – 256MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод
Послать решение Blockly Посылки Темы Где Обсудить (0)
Много лет алхимики пытались провести трансмутацию с помощью Философского камня. Алхимик Влачур
вплотную подобрался к этому! У Влачура имеется прямоугольная металлическая
сетка из `(n+1)+(m+1)` железных стержней размером `n` на `m`, где горизонтальные
стержни пронумерованы числами от `0` до `n` снизу вверх, а вертикальные – от
`0` до `m` слева направо.
Для проведения трансмутации Влачур совершает следующие операции: он берет
какой-то стержень и полностью окрашивает его волшебной краской. Для того, чтобы
понять, насколько он близок к достижению своей цели, ему необходимо знать, у
скольких квадратов единичной площади его сетки раскрашено ровно `t` `(0\ ≤\ t\ ≤\ 4)`
сторон. Помогите ему в этом!
В первой строке входного файла находятся три числа `n`, `m` и `q`
`(1\ ≤\ n,\ m\ ≤\ 10^9,\ 1\ ≤\ q\ ≤\ 10^5)` – размеры сетки Влачура и количество
выполненных им операций. В следующих `q` строках находятся описания операций.
Если первый символ в строке – h, то в той же строке находится число `x`
`(0\ ≤\ x\ ≤\ n)`, и эта операция означает, что Влачур красит горизонтальный
стержень с номером `x` своей волшебной краской. Аналогично, строчка вида v `y`
`(0\ ≤\ y\ ≤\ m)` означает, что он красит вертикальный стержень с номером `y`.
Строчка с единственным символом `?` означает, что вам следует вывести пять
чисел: для всех `t` от `0` до `4` выведите число `a_t` – сколько
квадратов единичной площади в сетке имеют ровно `t` закрашенных сторон.
Для каждой операции вида `?` выведите пять чисел – искомые количества квадратов единичной площади.
Пример ввода
3 3 4
h 1
v 1
h 2
?
Источник: neerc.ifmo.ru/school