時間限制:
3000 ms | 記憶體限制:
65535 kb
難度:3
描述
現有一塊草坪,長為20公尺,寬為2公尺,要在橫中心線上放置半徑為ri的噴水裝置,每個噴水裝置的效果都會讓以它為中心的半徑為實數ri(0 輸入
第一行m表示有m組測試資料
每一組測試資料的第一行有乙個整數數n,n表示共有n個噴水裝置,隨後的一行,有n個實數ri,ri表示該噴水裝置能覆蓋的圓的半徑。
輸出輸出所用裝置的個數
樣例輸入
252 3.2 4 4.5 6
101 2 3 1 2 1.2 3 1.1 1 2
樣例輸出
25
因為題目條件給出:噴水裝置是放在橫中心線上的,所以只要考慮每個噴水裝置的有效噴射距離和長20的關係即可;而有效噴射距離可以表示為2*sqrt(ri^2-1).要用最少的噴水裝置就從大到小取即可。
#include#include//求有效噴射距離
double true_len(double r)
int main()
{ int m;
scanf("%d",&m);
while(m--)
{ int n,k=0;//k表示所需的裝置個數
scanf("%d",&n);
double a[1000];
double temp,len=20;
for(int i=0;i
噴水裝置(一)
時間限制 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個噴水...