R×C 격자에서 몬스터가 최대 K개 있을 때 몬스터를 포함하지 않는 모든 크기의 정사각형 영역 개수를 센다.
어려움8배열동적 계획법누적 합행렬아직 제출이 없습니다시간 제한5초메모리 제한512 MB
문제 설명
예제3
문제
몬스터 조련사는 몬스터를 찾아다니지만, 조련사가 아닌 사람에게 몬스터는 매우 위험하다. 그래서 몬스터가 없는 안전한 자리를 찾으려 한다.
세계를 격자로 보자. 일부 칸에는 몬스터가 한 마리씩 있다. 안전한 정사각형은 격자에 맞춰 놓인 D×D 칸짜리 정사각형 영역 중 몬스터가 한 마리도 들어 있지 않은 것이다(D≥1). 세계 전체에 크기에 상관없이 안전한 정사각형이 모두 몇 개인지 구하라. 크기가 같아도 위치가 다르면 서로 다른 정사각형으로 센다.
입력
첫 줄에 테스트 케이스의 개수 T가 주어진다.
각 테스트 케이스의 첫 줄에는 세 정수 R, C, K가 주어진다. 격자는 R행 C열이고 몬스터 K마리가 있다. 이어지는 K개의 줄에는 i번째 몬스터가 있는 행 번호 Ri와 열 번호 Ci가 주어진다. 행 번호는 위에서 아래로 0부터, 열 번호는 왼쪽에서 오른쪽으로 0부터 매긴다.
출력
각 테스트 케이스마다 한 줄에 Case #x: y 형식으로 출력한다. x는 1부터 시작하는 테스트 케이스 번호이고, y는 그 테스트 케이스에서 안전한 정사각형의 개수이다.
제한
1≤T≤20
1≤R≤3000
1≤C≤3000
0≤K≤3000
0≤Ri<R (1≤i≤K)
0≤Ci<C (1≤i≤K)
i=j이면 (Ri,Ci)=(Rj,Cj). 한 칸에 몬스터가 둘 이상 있는 경우는 없다.