编程题
### 问题描述 小郑一觉醒来发现起晚啦!现在需要从家里飞速前往公司,对他来说,路线是唯一的。 可以把小郑的上班路径看作是一条直线,其中有一些位置能被太阳直射,而有一些被遮住了。 小郑步行每秒的移动速度是 $1$ 米每秒,步行不花费体力。 路径长度为 $s$,有 $n$ 个不相交的整数区间 $l$ 到 $r$,表示这部分 $[l,r]$ 之间被遮蔽了。 小郑一开始有 $c$ 的体力,他可以耗费每秒 $1$ 点体力慢跑一会儿,这样,他就可以在这段时间内获得 $2$ 米每秒的移动速度。 小郑也可以耗费每秒 $3$ 点体力冲刺一会儿,这样,他就可以在这段时间内获得 $3$ 米每秒的移动速度。 注意:时间是连续的,例如,小郑可以花费 $2$ 点体力冲刺 $\dfrac{2}{3}$ 秒。 小郑可以在任意时间决定他的移动方式,但他希望被晒到太阳的时间最短。 ### 输入格式 第一行输入三个整数 $s,n,c$,代表路径的总长度,被遮蔽区间的个数和小郑的初始体力。 接下来 $n$ 行,每行两个整数 $l,r$ 表示 $[l,r]$ 这段区间被遮蔽了。 ### 输出格式 输出小郑最少要被太阳晒到的时间(四舍五入保留 $6$ 位小数)。 ### 样例输入 1 ```text 100 0 10 ``` ### 样例输出 1 ```text 90.000000 ``` ### 样例输入 2 ```text 100 2 20 10 20 60 100 ``` ### 样例输出 2 ```text 30.000000 ``` ### 样例输入 3 ```text 100 1 100 0 90 ``` ### 样例输出 3 ```text 3.333333 ``` ### 评测数据规模 对于所有评测数据,$0 \lt n \le 10^3,0 \lt s,l,r,c \lt 10^{10}$。 数据保证 $l\le r,l_i\le l_{i+1}$ 且不会有两段区间有重合的地方。
查看答案
赣ICP备20007335号-2