Color Tunnels | JXNUOJ
一家生产玩具的公司有一个复杂的系统来给产品上色。为了获得所需的颜色,产品必须按照指定的顺序涂上几种颜色。一种产品是通过移动颜色通道来着色的。对于每一种颜色,至少有一个通道用这种颜色粉刷,但可能有更多。隧道分布在油漆区域,产品必须从一个隧道运送到另一个隧道,才能涂上给定的颜色。喷漆工序开始时,产品处于生产车间的某一时刻,最后必须送到产品仓库
更正式的说法是,未着色的成品在某个特定的起点(源点),在按照特定的顺序涂上不同的颜色后,必须交付到另一个给定的起点(目的点)。这里有几个隧道,每个隧道都被假设为平原上具有特定颜色的线段。隧道的颜色不一定是截然不同的。设<cl,c2,..cn>为要绘制产品的n个颜色序列。产品需要通过隧道tl,t2,t,使ti的颜色为ci。需要注意的是,不需要油漆就可以通过隧道,所以上面提到的<tl,t2··Tn>实际上可能是产物经过的隧道的子序列。产品通过隧道的方向并不重要。目标是在颜色约束下找到从源到目的地的最短路径。路径可能会穿过自己,甚至穿过隧道,通过隧道两次(或更多)也是允许的。注意,两个隧道可以交叉或重叠,但不同。
输入文件包含几个测试用例。输入的第一行包含一个整数(在1到20之间),即测试用例的数量。每个测试用例的第一行包含四个实数xs,ys,xt,yt,分别是源和目标的x和y坐标。测试用例的第二行
包含颜色序列:第一个数字是序列的长度(在1到30之间),其余的是序列本身。序列中的每一种颜色都是1..100范围内的整数。第三行包含一个整数n,范围为1...60,表示隧道的数量,后面有n行,每行包含5个数字。前两个数字是隧道一端的x和y坐标。第三和第四个数是另一端的x和y坐标。坐标是实数。第五个数字在1..100范围内
输出:
输出文件必须有t行,每一行都包含受问题约束的从源到目标路径的最小长度。该长度将在小数点后三位精度范围内与最佳长度进行比较。
英语翻译九
最新推荐文章于 2024-11-12 13:55:23 发布