噴水裝置(一)

2021-08-28 04:16:40 字數 1083 閱讀 3058

噴水裝置(一)

時間限制: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

解析:題目中裝置的圓心都在矩形草坪的橫中心線上,所以可以得到噴水裝置覆蓋草坪的簡易圖:

根據圖形可以得到每個圓能完全覆蓋的就是圖中紅色部分的2倍。所以可以得到一下思路:

把每組的裝置根據半徑排序,依次使用半徑大的裝置來安裝,直到覆蓋所有草坪面積。

**:

#include#include#include#define maxsize 600

using namespace std;

int main()

}printf("%d\n",couts);}}

平台最優程式:

#include#include#include#include#includeusing namespace std;

//裝置實際覆蓋草坪的寬度

double length(double r,double b)

int main()

sort(rs.begin(),rs.end(),greater());

double sum=0;

int i;

for(i=0; il) break;

sum+=length(rs[i],w);

}cout

噴水裝置(一)

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

噴水裝置(一)

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

噴水裝置(一)

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