编程题
修路 ### 问题描述 这天, 小明在修路。 他需要修理两条平行的道路 $A, B$, 两条路上面分别有 $n$ 个和 $m$ 个点需要 维脩, 它们相对于道路起点的距离分别为 $a_{1}, a_{2}, \ldots, a_{n}$ 和 $b_{1}, b_{2}, b, \ldots, b_{m}=$ 如图, 两条路之间的距离为 $d$ 且它们起点 (最左端) 的连线和两条路都垂直。小明的起 点为道路 $A$ 的起点, 他需要尽可能快地逆历这些需要维修的 $n+m$ 个点, 他既 可以沿着道路 向右 行䞢, 也可以在两条道路之间的空地上**随意**行走。 ![图片描述](https://doc.shiyanlou.com/courses/uid1357404-20220725-1658714886561/wm) 小明想知道迻历这些点的最短路程是多少。 ### 输入格式 输入共三行,第一行为三个正整数 $n, m, d$ 。 第二行为 $n$ 个由空格㤱开的正整数 $a_{1}, a_{2}, \ldots, a_{n}$ 。 第三行为 $m$ 个由空格隔开的正整数 $b_{1}, b_{2}, \ldots, b_{m}$。 ### 输出格式 一行, 一个浮点数, 表示答案, 保留两位小数。 ### 样例输入 ```text 2 2 2 2 1 1 2 ``` ### 样例输出 ```text 5.24 ``` ### 样例说明 图中红线指出了样例的最短路线, $1+1+\sqrt{5}+1=5.24$ 。 ### 评测用例规模与约定 対于 $30 \\%$ 的数据, 保沚 $n+m \leq 10$; 对于 $100 \\%$ 的数据, 保证 $n, m \leq 2000, d \leq 4 \times 10^{6}, a_{i}, b_{i} \leq 10^{6}$ 。
查看答案
赣ICP备20007335号-2