為因應資訊化與數位的發展趨勢,某市長想要在城市的一些服務點上提供無線網路服務,因此他委託電信公司架設無線基地台。 某電信公司負責其中N個服務點,這N個服務點位在一條筆直的大道上,它們的位置 (座標 )是以與該大道一端的距離P[i]來表示,其中 i=0到N -1。由於設備訂製與維護的因素, 每個基地台的服務範圍必須都一 樣,當基地台架設後與此距離不超過 R (稱為基地台的半徑 )的服務點都可以使用無線網路服務 ,也就是 說每一個基地台可以服務的範圍是D=2R(稱為基地台的直徑)。現在電信公司想要計算,如果架設 K個基地台,那麼的最小 直徑 是多 少才能使每個服務點都可以得到。
基地台架設的點不一定要在服務點上,最佳的架設地點也不唯一,但本題只需求最小直徑即可。 以下是一個N=5的例子 ,五個服務點的座標分別是 ,1、2、5、7、8。 假設 K=1,最小的直徑是 7,基地台架設在座標 4.5 的位置,所有點與基地台距離都在半徑 3.5 以內。假設 K=2,最小的直徑是 3,一個基地台服務座標 1與 2的點, 另一個基地台服務外三點。在 K=3時,直徑只要 時,直徑只要 1就足夠了。
輸入有兩行。第一是個正整數 N與 K,以一個空白間格。第二行 N個非負整數 P[0],P[1],….,P[N-1] 表示 N個服務點的位置, 這些位置彼此之間以一個空白間格。 請注意,這 N個位置並不保證相異也未經過排序 。本題中, K<N且所有座標是整數, 因此,所求最小直徑必然是不小於 1的整數。座標範圍不超過 1,000,000,000 ,1≤ K < N ≤ 50,000。
輸出最小直徑,不要有任何多餘的字或空白,並以換行結尾 。