NYOJ 噴水裝置(一)

2021-07-27 16:38:27 字數 909 閱讀 6156

時間限制:

3000 ms  |  記憶體限制:

65535 kb

難度:3 描述

現有一塊草坪,長為20公尺,寬為2公尺,要在橫中心線上放置半徑為ri的噴水裝置,每個噴水裝置的效果都會讓以它為中心的半徑為實數ri(0

輸入

第一行m表示有m組測試資料

每一組測試資料的第一行有乙個整數數n,n表示共有n個噴水裝置,隨後的一行,有n個實數ri,ri表示該噴水裝置能覆蓋的圓的半徑。

輸出輸出所用裝置的個數

樣例輸入

2

52 3.2 4 4.5 6

101 2 3 1 2 1.2 3 1.1 1 2

樣例輸出

2

5

**[苗棟棟]原創

上傳者苗棟棟

簡單的貪心問題,還需要注意一點就是,噴水裝置的噴水範圍是乙個圓形,我們怎麼才可以確保整個草坪全部濕潤?用面積與總的草坪面積相比較顯然是行不通的。

我們可以算出每個噴水裝置一定能噴到的範圍所佔草坪的長度,將這個有效長度累加與總的草坪長度比較即可。

#include#include#include#includeusing namespace std;

double cmp(double a,double b)

int main()

{ int t;

double a[605];

cin>>t;

while(t--)

{int n,i,ans;

double sum;

cin>>n;

for(i=0;i>a[i];

sort(a,a+n,cmp);

ans=0,sum=0;

for(i=0;i=20)

{cout<

NYOJ 噴水裝置(一)

時間限制 3000 ms 記憶體限制 65535 kb 難度 3 描述現有一塊草坪,長為20公尺,寬為2公尺,要在橫中心線上放置半徑為ri的噴水裝置,每個噴水裝置的效果都會讓以它為中心的半徑為實數ri 0苗棟棟 簡單貪心 include include includeusing namespace ...

nyoj 噴水裝置

時間限制 3000 ms 記憶體限制 65535 kb 難度 3 描述 現有一塊草坪,長為20公尺,寬為2公尺,要在橫中心線上放置半徑為ri的噴水裝置,每個噴水裝置的效果都會讓以它為中心的半徑為實數ri 0 輸入 第一行m表示有m組測試資料 每一組測試資料的第一行有乙個整數數n,n表示共有n個噴水裝...

NYOJ 噴水裝置(一) (貪心)

時間限制 3000 ms 記憶體限制 65535 kb 難度 3 描述 現有一塊草坪,長為20公尺,寬為2公尺,要在橫中心線上放置半徑為ri的噴水裝置,每個噴水裝置的效果都會讓以它為中心的半徑為實數ri 0 輸入 第一行m表示有m組測試資料 每一組測試資料的第一行有乙個整數數n,n表示共有n個噴水裝...