编程题
### 问题描述 小齐收到了一份有趣的机械拼图作为生日礼物。这个拼图由三个实心物体组成,每个物体都是由 $1x1$ 的单位方块粘在一起形成的。“连接”形状是指在物体上的任何一个方块都可以通过向北、向南、向东或向西的方式到达物体上的任何其他方块。 可以通过反复将物体沿北、南、东或西方向滑动一个单位来移动它。拼图的目标是移动这些物体,使它们分离,即它们的边界框不再共享任何正面重叠。 给定三个物体的形状和位置,请帮助小齐确定将这些物体分离所需的最小移动次数。 ### 输入格式 第 $1$ 行: 三个空格分隔的整数 $N_1, N_2, N_3$,分别描述物体 $1$、$2$ 和 $3$ 的单位方块数量。 第 $2$ 行至 $1+N_1$ : 每行描述物体 $1$ 的一个单位方块的 $(x, y)$ 位置,所有坐标在范围 $0..9$ 内。 第 $2+N_1$ 行至 $1+N_1+N_2$: 每行描述物体 $2$ 的一个单位方块的 $(x, y)$ 位置,所有坐标在范围 $0..9$ 内。 第 $2+N_1+N_2$ 行至 $1+N_1+N_2+N_3$ : 每行描述物体 $3$ 的一个单位方块的 $(x, y)$ 位置,所有坐标在范围 $0..9$ 内。 ### 输出格式 第 $1$ 行: 将三个物体分离所需的最小移动次数,如果无法分离,则输出 $-1$。 ### 样例输入 ``` 1 12 1 2 2 0 0 0 1 0 2 0 3 1 3 2 3 3 3 3 2 3 1 3 0 2 0 1 0 1 2 ``` ### 样例输出 ``` -1 ``` ### 评测数据规模 $N_1, N_2, N_3$ 满足 $2 \leq N \leq 20$。
查看答案
赣ICP备20007335号-2