CF143A.Help Vasilisa the Wise 2

传统题 时间 2000 ms 内存 256 MiB 5 尝试 1 已通过 1 标签

Help Vasilisa the Wise 2

题目描述

远方王国的睿智瓦西丽莎收到了来自“近一点王国”的好友睿智赫拉维莎赠送的一个带有秘密的魔法盒。然而,瓦西丽莎并不知道盒子的秘密是什么,因为她无法再次打开它。她希望你再一次帮助她解开这个谜题。

盒子的锁看起来如下:它包含 44 个用于放置宝石的相同凹槽,排成 2×22 \times 2 正方形,并且在锁边上靠近这些凹槽的位置写有一些整数。下图展示了一个锁的示例。

盒子随附有 99 颗宝石。它们的形状与凹槽吻合,每颗宝石上分别刻有一个 1199 之间的数字(每个数字只出现在一颗宝石上)。只有当正确地用宝石装饰盒子时,盒子才会被打开:也就是说,正方形的每个凹槽都要正好放入一颗宝石,并且正方形各行、各列及两条对角线上数字的和都要等于锁边上对应写的数字。例如,对于下图所示的锁,只要按下面的方式将宝石放入凹槽,盒子就会被打开。

现在,睿智的瓦西丽莎想知道,给定盒子锁上的数字,她应当选择哪几颗宝石放入凹槽才能打开盒子。请帮助瓦西丽莎解决这个棘手的问题。

输入格式

输入包含盒子锁边上写的数字。第一行输入以空格分隔的两个整数 r1r_{1}r2r_{2},分别表示正方形两行的和。第二行输入以空格分隔的两个整数 c1c_{1}c2c_{2},分别表示正方形两列的和。第三行输入以空格分隔的两个整数 d1d_{1}d2d_{2},分别表示正方形主对角线及副对角线的和(1r1,r2,c1,c2,d1,d2201 \leq r_{1},r_{2},c_{1},c_{2},d_{1},d_{2} \leq 20)。这 6 个变量与它们在锁上的位置对应关系详见下图。如需更多说明,请参见题目描述中的第二个样例。

输出格式

输出盒子宝石摆放方案:两行,每行两个用空格分隔的 1199 的整数。数字需两两不同。如果不存在方案使得盒子打开,则输出一行 -1

如果有多种方案,输出任意一种均可。

说明/提示

请注意题目最后的测试样例:此时无法打开盒子,因为瓦西丽莎需要 4 颗编号都是 55 的宝石。而实际上每个数字的宝石只有一颗,编号分别从 1199

由 ChatGPT 5 翻译

样例

3 7
4 6
5 5
1 2
3 4
11 10
13 8
5 16
4 7
9 1
1 2
3 4
5 6
-1
10 10
10 10
10 10
-1

在线编程 IDE

建议全屏模式获得最佳体验