luogu#P6397. [COI2008] GLASNICI

    ID: 10412 远端评测题 1000ms 125MiB 尝试: 1 已通过: 1 难度: 4 上传者: 标签>二分答案贪心COCI2008O2优化Special Judge

[COI2008] GLASNICI

题目描述

一条直线上有 nn 个信使,将他们按照从左至右的顺序以 11nn 编号。换句话说,设 ii 号信使的的坐标为 did_i,则对于 1i<n1 \leq i \lt ndidi+1d_i \leq d_{i + 1}

信使传递一条消息的方法如下:

  • 在任意时刻(不一定是整数时刻),任一信使(无论是否已知消息)都可以自由选择向左移动或者向右移动或者原地不动。其移动的速度为每秒 11 单位长度。
  • 当两个信使相距不超过一给定实数 kk 时,双方可以进行消息传递,也即如果两人中有一人已知该消息,则两人都知道了该消息。消息传递是瞬间发生的,不消耗时间。

现在 11 号信使得到了一条消息,请求出最小的让所有信使都得到该消息的用时。

输入格式

第一行有一个实数,表示可以进行消息传递的最大距离 kk

第二行有一个整数,表示信使的个数 nn

33 到第 (n+2)(n + 2) 行,每行一个实数,第 (i+2)(i + 2) 行的实数 did_i 表示信使 ii 的坐标。

输出格式

本题使用 Special Judge

输出一行一个实数表示答案。当你的输出与标准答案相差不超过 10310^{-3} 即可得到对应测试点的分数。因此建议您至少保留四位小数

3.000 
2 
0.000 
6.000

1.500
2.000 
4 
0.000 
4.000 
4.000 
8.000

1.000

提示

样例 1 解释

在前 1.51.5 秒,11 号信使向右走,22 号信使向左走。

1.51.5 秒时,11 号信使在坐标 1.51.5 处,22 号信使在坐标 4.54.5 处,二者距离不超过 33,可以进行消息传递。

数据规模与约定

对于全部的测试点,保证:

  • 1n1051 \leq n \leq 10^50k1060 \leq k \leq 10^6
  • 0di1090 \leq d_i \leq 10^9,且对于任意的 1i<n1 \leq i \lt n,都有 didi+1d_i \leq d_{i + 1}
  • 输入的实数小数点后均有 33 位数字。

说明

题目译自 COCI2007-2008 COI2008 T1 GLASNICI,翻译与 SPJ 均来自一扶苏一