만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

연금술

시간 제한2초메모리 제한1024 MB

요약
철 막대를 하나 칠할 때마다, 칠해진 변이 정확히 t개인 격자 칸의 수를 t가 0부터 4까지인 경우별로 구합니다.
난이도

보통10점 중 6점

유형
수학, 정렬, 구현
정답자
아직 제출이 없습니다

문제

오랜 세월 동안 연금술사들은 현자의 돌로 변환을 시도해 왔다. 연금술사 블라추르가 이 목표에 거의 다가섰다. 블라추르에게는 크기가 n×mn \times m인 직사각형 금속 격자가 있으며, 이 격자는 (n+1)+(m+1)(n+1)+(m+1)개의 철 막대로 이루어져 있다. 가로 막대는 아래에서 위로 00부터 nn까지, 세로 막대는 왼쪽에서 오른쪽으로 00부터 mm까지 번호가 붙어 있다.

변환을 위해 블라추르는 다음 연산을 수행한다. 막대 하나를 골라 마법의 페인트로 전체를 칠한다. 목표에 얼마나 가까워졌는지 알려면, 격자의 단위 정사각형 중 변이 정확히 tt개(0≤t≤40 \le t \le 4) 칠해진 것이 몇 개인지 알아야 한다. 그를 도와주자.

입력

첫 줄에 격자의 크기와 연산 수를 나타내는 세 정수 nn, mm, qq (1≤n,m≤1091 \le n, m \le 10^9, 1≤q≤1051 \le q \le 10^5)가 주어진다. 이후 qq개의 줄에 연산이 하나씩 주어진다.

줄의 첫 글자가 h이면 같은 줄에 정수 xx (0≤x≤n0 \le x \le n)가 있고, 이 연산은 가로 막대 xx를 칠한다. 마찬가지로 v로 시작하고 정수 yy (0≤y≤m0 \le y \le m)가 이어지는 줄은 세로 막대 yy를 칠한다.

줄이 ? 하나로만 이루어져 있으면, tt가 00부터 44까지인 각 경우에 대해 ata_t, 즉 변이 정확히 tt개 칠해진 격자의 부분 직사각형 개수를 출력해야 한다.

출력

각 ? 연산에 대해 요청된 다섯 개의 개수 a0,a1,a2,a3,a4a_0, a_1, a_2, a_3, a_4를 출력한다.

예제1

  1. 예제 1

    입력
    3 3 4
    h 1
    v 1
    h 2
    ?
    
    예상 출력
    0 2 5 2 0