扯啥淡呢也沒啥好玩兒的
阿新 • • 發佈:2018-12-27
題目描述
V先生有一天工作到很晚,回家的時候要穿過一條長l的筆直的街道,這條街道上有n個路燈。假設這條街起點為0,終點為l,第i個路燈座標為ai。路燈發光能力以正數d來衡量,其中d表示路燈能夠照亮的街道上的點與路燈的最遠距離,所有路燈發光能力相同。為了讓V先生看清回家的路,路燈必須照亮整條街道,又為了節省電力希望找到最小的d是多少?
… | … |
---|---|
輸入 輸入兩行資料,第一行是兩個整數:路燈數目n (1≤n≤1000),街道長度l (1 ≤l≤109)。第二行有n個整數ai (0 ≤ ai≤ l),表示路燈座標,多個路燈可以在同一個點,也可以安放在終點位置。 |
樣例輸入 7 15 15 5 3 7 9 14 0 |
輸出 輸出能夠照亮整個街道的最小d,保留兩位小數。 |
樣例輸出 2.50 |
時間限制 C/C++語言:1000MS 其它語言:3000M |
記憶體限制 C/C++語言:65536KB 其它語言:589824KB |
#python
import sys
[n,l]=[int(x) for x in sys.stdin.readline().strip().split()]
a=[int(x) for x in sys.stdin.readline().strip().split()]
a.sort()
diff_a=list(map(lambda i:a[i+1]-a[i],range(len(a)-1 )))
d=float(max(diff_a))/2
if d>=a[0] and d>=l-a[-1]:
print("%.2f"%d)
else:
d=max([a[0],l-a[-1]])
print("%.2f"%d)