P3432 [POI 2005] LUS-Mirror Trap

题目描述

镜子陷阱是由镜子构成的长方体,镜子的反射面对着长方体的内部。在长方体的几何中心放入一个微型激光器(尺寸忽略)。现在我们的任务是把激光向某一个方向发射,并且使光束在回到激光器自身之前,通过的总距离尽可能长。通过的总距离表示为激光束在与镜子反射面平行的三个方向的距离之和,也就是曼哈顿(城市)度量。 不同的侧面相遇的陷阱的边和顶点不会反射激光束,且陷阱的边长是整数。在长方形陷阱中,使用笛卡尔坐标系。坐标系的纵横轴分别平行于陷阱的长和宽,激光器的位置在原点。激光器可以瞄准陷阱内的任意一个点包括反射镜的表面上的点(唯一的例外就是激光器本身,点 $(0,0,0)$)。 我们的任务: 输入这个镜子陷阱的尺寸,通过编写的程序计算出一个点,即激光器指向这一点:这一束激光应在反射镜(但不一定是所有反射镜)反射,但是不与陷阱的边、顶点相交,最后需要回到激光器本身(不需要一定的方向)同时尽可能使得总距离长。

输入格式

输入有多个陷阱。输入的第一行包含一个整数 $K(1 \le K\le 1000)$,表示要分析的陷阱数。 在 $2,3,\dots,K + 1$ 行中,有一个陷阱的描述,每行一个。 陷阱的描述由三个用空格分隔的数字 $x,y,z(5 \le x,y,z \le 1000)$ 组成。镜面陷阱的尺寸为 $2x \times 2y \times 2z$。

输出格式

输出 $K$ 行。第 $K$ 行应包含第 $K$ 个陷阱的解决方案,由空格分隔的 $3$ 个数 $x,y,z$,表示激光器需要瞄准的点的坐标。 如果有多个不同的正确解决方案,则任意的输出一个。

说明/提示

感谢@SLYZ\_0120 提供翻译。