#P11466. 透明立方体

透明立方体

背景

NIT 很喜欢观察透明的立方体。

题目描述

有一个透明的立方体,设它的长宽高分别为 n,m,kn,m,k(n≥m≥kn\ge m\ge k)。

立方体中共有 n×m×kn\times m\times k 个 1×1×11\times1 \times1 的小立方体。每个小立方体可由其在三维空间中的坐标 (a,b,c)(a,b,c) 表示(1≤a≤n1\le a\le n,1≤b≤m1\le b\le m,1≤c≤k1\le c\le k)。

现将立方体的一部分染黑,我们可以选择一些 1×1×11\times1\times1 的小立方体将其染黑。

一个立方体变得不透明,当且仅当从正面,侧面,顶面观察立方体,立方体均不再有透明的地方。

你需要求出最少染黑多少个 1×1×11\times1\times1 的小立方体才能使得立方体变得不透明,并给出方案。

若有多个染色数最小的方案,给出任意一个可行方案即可。

输入格式

一行三个正整数,表示 n,m,kn,m,k。

输出格式

第一行一个整数表示最小的染色数 xx。

接下来 xx 行每行三个正整数 a,b,ca,b,c,表示我们将立方体中 (a,b,c)(a,b,c) 这个小立方体染黑了。

你需要保证 1≤a≤n1\leq a\leq n,1≤b≤m1\leq b\leq m,1≤c≤k1\leq c\leq k。

3 2 2

6
1 1 1
3 1 1
2 1 2
2 2 1
1 2 2
3 2 2

提示

1≤k≤m≤n≤501\le k\le m\le n\le 50。