4381: D. 星际保安 (starboy.c/cpp/pas)
内存限制:512 MB
时间限制:2.000 S
评测方式:文本比较
命题人:
提交:1
解决:1
题目描述
## Problem D. 星际保安 (starboy.c/cpp/pas)
在遥远的宇宙中,有一颗神秘的星球,名叫 Lu3KO5。这个星球是宇宙中最安全的学术圣地,然而,最近星球上的安全局势变得紧张。作为星球上唯一的高级保安,Luke 的职责是确保整个星球的安全。
Lu3KO5 星球上有四个重要的能量核心检查点,分别标记为$p_1$、$p_2$、$p_3$和$p_4$。这些能量核心维持着星球的稳定,彼此相连,形成了一个巨大且精密的能量环。为了保证星球安全,Luke 每天需要进行 114514 次巡逻,确保核心没有受到任何损害。
每次巡逻中,Luke 需要在这些检查点之间移动,并且每次移动的距离不得低于$K$米。如果移动距离不达标,核心的能量将会不稳定,可能导致星球的崩溃。由于这些检查点按顺时针和逆时针方向相连,Luke 只能在相邻的检查点之间移动,而系统只计算两个检查点之间的直线距离。
此外,Luke 的基地设在检查点$p_2$附近,他必须从这里出发,并在每次巡逻结束时返回这里。为了节省体力并完成任务,他希望找到一条最短的巡逻路线,既能满足每次至少跑$K$米的要求,又能高效地完成巡逻任务。
现在,Luke 需要你的帮助,来计算出满足条件的最短巡逻路线!帮助这位保安英雄保卫 Lu3KO5 星球吧!
输入
### Input
第一行包含 5 个正整数$K, d_{1,2}, d_{2,3}, d_{3,4}, d_{4,1}$,分别表示距离限制以及相邻检查点之间的直线距离。
输出
### Output
输出一行一个整数表示最短距离。
样例输入 复制
2000 600 650 535 380
样例输出 复制
2165
提示
### Examples
#### 【样例 1 输入】
```input
2000 600 650 535 380
```
#### 【样例 1 输出】
```output
2165
```
#### 【样例 1 解释】
最佳路线为$2 \rightarrow 1 \rightarrow 4 \rightarrow 3 \rightarrow 2$
#### 【样例 2 输入】
```input
19 10 30 40 50
```
#### 【样例 2 输出】
```output
20
```
#### 【样例 2 解释】
最佳路线为$2 \rightarrow 1 \rightarrow 2$
#### 【样例 3 输入】
```input
200000000000000 79797 777 666 567
```
#### 【样例 3 输出】
```output
200000000000001
```
### Notes
| 测试点编号 | $K$ | $d$ |
| :--------- | :------------- | :----------- |
| 1 | $\leq 10$ | $\leq 5$ |
| 2 | $\leq 10$ | $\leq 5$ |
| 3 | $\leq 10$ | $\leq 5$ |
| 4 | $\leq 100000$ | $\leq 30000$ |
| 5 | $\leq 100000$ | $\leq 30000$ |
| 6 | $\leq 100000$ | $\leq 30000$ |
| 7 | $\leq 10^{18}$ | $\leq 30000$ |
| 8 | $\leq 10^{18}$ | $\leq 30000$ |
| 9 | $\leq 10^{18}$ | $\leq 30000$ |
| 10 | $\leq 10^{18}$ | $\leq 30000$ |