FZYZOJ 1200 路由器安置

2022-03-25 19:39:47 字數 994 閱讀 3345

時間限制:1000ms

記憶體限制:131072kb

一條街道安裝無線網路,需要放置m個路由器。整條街道上一共有n戶居民,分布在一條直線上,每一戶居民必須被至少一台路由器覆蓋到。現在的問題是所有路由器的覆蓋半徑是一樣的,我們希望用覆蓋半徑盡可能小的路由器來完成任務,因為這樣可以節省成本。

輸入第一行包含兩個整數m和n,以下n行每行乙個整數hi表示該戶居民在街道上相對於某個點的座標。

輸出僅包含乙個數,表示最小的覆蓋半徑,保留一位小數。

2 313

10

1.0
【樣例輸出】(在2,10位置上各放乙個)

【資料規模】

對於60%的資料,有1 ≤n, m ≤100,-1000 ≤hi ≤1000;

對於100%的資料,有1 ≤n, m ≤100000,-10000000 ≤hi ≤10000000。

【題解】

二分答案,然後判斷是否符合,列舉即可。

1 #include2

using

namespace

std;

3int

n,m,l,r,mid;

4int p[100010];5

char b[1

<<15],*s=b,*t=b;

6char

getchar2()

9int

read()

13while(ch>='

0'&&ch<='

9')

14return x*f;15}

16int

main()

27if(c>m) l=mid+1;28

else r=mid;29}

30 printf("

%.1lf

",l/2.0

);31

return0;

32 }

view code

0.119s,再一次rank1 =-=

路由器安置 Routing

一條街道安裝無線網路,需要放置m個路由器。整條街道上一共有n戶居民,分布在一條直線上,每一戶居民必須被至少一台路由器覆蓋到。現在的問題是所有路由器的覆蓋半徑是一樣的,我們希望用覆蓋半徑盡可能小的路由器來完成任務,因為這樣可以節省成本。1 n,m 100000 首先這種問題可以採用二分答案的方法.嘗試...

路由器安置(routing)Solution

首先看一下題面吧 問題描述 一條街道安裝無線網路,需要放置m個路由器。整條街道上一共有n戶居民,分布在一條直線上,每一戶居民必須被至少一台路由器覆蓋到。現在的問題是所有路由器的覆蓋半徑是一樣的,我們希望用覆蓋半徑盡可能小的路由器來完成任務,因為這樣可以節省成本。輸入資料 輸入檔案第一行包含兩個整數m...

upc 路由器安置

時間限制 1 sec 記憶體限制 128 mb 題目描述 一條街道安裝無線網路,需要放置m個路由器。整條街道上一共有n戶居民,分布在一條直線上,每一戶居民必須被至少一台路由器覆蓋到。現在的問題是所有路由器的覆蓋半徑是一樣的,我們希望用覆蓋半徑盡可能小的路由器來完成任務,因為這樣可以節省成本。輸入第一...