在一个二维平面上有 N 个城镇和 M 个宝箱,第 i 个城镇的坐标为 (X_i, Y_i) ,第 i 个宝箱的坐标为 (P_i, Q_i) 。
现在高桥君要从原点出发,访问所有的 N 个城镇,然后再回到原点。
高桥君可以在中途走到某个宝箱并吞下其中仅有的 1 个能量球,这样他的速度就会翻倍。
高桥君初始移动速度为 1 ,现在请你求出他旅途所用时间的最小值。
第一行为两个正整数 N 和 M 。
接下来 N 行,每行两个整数,第 i 行为 X_i, Y_i 。
接下来 M 行,每行两个整数,第 i 行为 P_i, Q_i 。
所有输入数据的含义如题目描述所示。
输出仅有一行一个实数,表示高桥君所用的最短时间。 你的输出只要和标准答案相差不超过 10^{-6} 即视作正确。
2 1 1 1 0 1 1 0
2.5000000000
2 1 1 1 0 1 100 0
3.4142135624
1 2 4 4 1 0 0 1
4.3713203436
1 \leq N \leq 12
0 \leq M \leq 5
-10^9 \leq X_i, Y_i, P_i, Q_i \leq 10^9
所有坐标均不重复(至少可以视作不重复,Laffey 也不知道他造数据的时候会不会有一组很巧的数据),且和原点不相同。