A14587 | Shortest path
时间限制1s
内存限制256MB
通过 / 提交0/0
题目描述
You are given $N$ points on an infinite plane with the Cartesian coordinate system on it. $N-1$ points lay on one line, and one point isn't on that line. You are on point $K$ at the start, and the goal is to visit every point. You can move between any two points in a straight line, and you can revisit points. What is the minimum length of the path?
输入格式
The first line contains two integers: $N$ ( $3 \leq N \leq 2*10^5$ ) - the number of points, and $K$ ( $1 \leq K \leq N$ ) - the index of the starting point.
Each of the next $N$ lines contain two integers, $A_i$ , $B_i$ ( $-10^6 \leq A_i, B_i \leq 10^6$ ) - coordinates of the $i-th$ point.
Each of the next $N$ lines contain two integers, $A_i$ , $B_i$ ( $-10^6 \leq A_i, B_i \leq 10^6$ ) - coordinates of the $i-th$ point.
输出格式
The output contains one number - the shortest path to visit all given points starting from point $K$ . The absolute difference between your solution and the main solution shouldn't exceed $10^-6$ ;
输入输出样例
输入 #1
5 2 0 0 -1 1 2 -2 0 1 -2 2
输出 #1
7.478709
The shortest path consists of these moves:
2 -> 5
5 -> 4
4 -> 1
1 -> 3
There isn't any shorter path possible.
2 -> 5
5 -> 4
4 -> 1
1 -> 3
There isn't any shorter path possible.
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?
提交通过
评测结果:Accepted