噴水裝置(一) 貪心

2021-08-07 11:23:41 字數 1081 閱讀 6454

描述

現有一塊草坪,長為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

分析:

要想使得使用噴頭使用最少,那就需要先盡可能的使用輻射範圍比較大的噴頭,那麼覆蓋的範圍就大
先將半徑從大到小排序。由圖可知:
草坪的長度為20,要想全部將草坪全部濕潤,那麼就要將輻射範圍在水平方向上的 數累加,當大於20的時候,就全部濕潤,如l1*2就是半徑為r1的噴頭所能在水平方向上噴射的最遠距離
#include #include #include #include #include #include #include #include #include #include using namespace std;

int cmp(double a,double b)

double tri(double a,double b)

int main()

sort(v.begin(),v.end(),cmp);

double sum = 0;

for(int i = 0;i < v.size();i++)}}

return 0;

}

噴水裝置(一)(貪心)

時間限制 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個噴水裝...

C 噴水裝置 貪心

題目 vector pair寫法 結構體陣列 include include include include include include includeusing namespace std 3 8 20 2 5 34 1 1 27 2 10 2 13 3 16 2 19 4 3 10 1 3 ...