일도양단!

아직 제출이 없습니다시간 제한1초메모리 제한16 MB

문제

맛있는 젤리가 있다. 이 젤리는 자르기 좋도록 부피가 1인 정육면체 칸으로 나뉘어 있고, 가로 RR칸, 세로 CC칸, 높이 HH칸이다. 젤리 안에는 건포도가 NN개 들어 있다. 건포도가 여러 칸에 걸쳐 있는 경우는 없고, 한 칸에 건포도가 두 개 이상 있는 경우도 없다. 그래서 젤리를 삼차원 배열로 보면 건포도의 위치를 세 정수 (r,c,h)(r, c, h)로 나타낼 수 있다. 아래 그림을 참고하라.

토깽이는 젤리를 정확히 NN개의 조각으로 나누려고 하는데, 각 조각에는 건포도가 정확히 하나씩 들어 있어야 한다. 자를 때는 칸 경계에 정확히 맞춰 조각 하나를 끝까지 잘라 직육면체 두 개로 나누어야 하고, 자르다가 중간에 멈출 수는 없다. 토깽이는 이렇게 나온 NN개의 조각 중에서 부피가 가장 작은 조각의 부피를 최대한 크게 만들고 싶어 한다. 토깽이를 도와 젤리를 잘라 주자.

입력

첫째 줄에 젤리의 크기 RR, CC, HH와 건포도의 개수 NN이 공백으로 구분되어 주어진다. (1R,C,H71 \le R, C, H \le 7, 1Nmin(R×C×H,77)1 \le N \le \min(R \times C \times H, 77))

다음 NN개의 줄에는 각 건포도의 위치를 나타내는 세 정수 rr, cc, hh가 공백으로 구분되어 주어진다. (1rR1 \le r \le R, 1cC1 \le c \le C, 1hH1 \le h \le H) 두 건포도의 위치가 같은 경우는 없다.

출력

각 조각에 건포도가 하나씩 들어가도록 젤리를 정확히 NN개로 나눌 때, 부피가 가장 작은 조각의 부피를 최대로 만든 값을 출력한다.

힌트

예제 입력의 젤리를 위에서 내려다본 모습이다. 아무리 잘 잘라도 세 조각의 부피는 2, 3, 4가 된다.