对于南阳理工的喷泉装置一题,我用了sort函数的升序排序:

题目:

喷水装置(一)

时间限制:3000 ms  |  内存限制:65535 KB

难度:3

描述

现有一块草坪,长为20米,宽为2米,要在横中心线上放置半径为Ri的喷水装置,每个喷水装置的效果都会让以它为中心的半径为实数Ri(0<Ri<15)的圆被湿润,这有充足的喷水装置i(1<i<600)个,并且一定能把草坪全部湿润,你要做的是:选择尽量少的喷水装置,把整个草坪的全部湿润。

输入

第一行m表示有m组测试数据
每一组测试数据的第一行有一个整数数n,n表示共有n个喷水装置,随后的一行,有n个实数ri,ri表示该喷水装置能覆盖的圆的半径。

输出

输出所用装置的个数

样例输入

2
5
2 3.2 4 4.5 6
10
1 2 3 1 2 1.2 3 1.1 1 2

样例输出

2
5

题中说:“一定能把草坪全部湿润”,所以不用担心数据范围过小等淋不湿草坪的问题。

    下面分析一下解题过程:

                          

                       从图中能分析出当d1,d2,d3.....等取得最大值时需要的圆最少。而限制条件为矩形的长度,现在需要做的就是将圆按从大到小排列。知道各个圆的2*d之和大于等于20.

                       下面附上代码:

#include<iostream>
#include<cmath>    //sqrt开平方函数的头文件;
#include<algorithm>    //sort函数头文件;
using namespace std;bool cmp(int a,int b)  //调用sort函数时,使数组从大到小排列;
{return a>b;
}
int main()
{int m,n,i;double r[605],s;cin>>m;while(m--){s=0;cin>>n;for(i=0;i<n;i++){cin>>r[i];         //输入n个圆的半径;r[i]=2.0*sqrt(r[i]*r[i]-1);  //将每个圆能润湿的最大宽度d再次赋给之前所定义的圆的半径;}sort(r,r+n,cmp);    //调用sort的升序排序函数;for(i=0;i<n;i++){s+=r[i];       //s的值为各个圆所能润湿的最大宽度d之和。当然前提为各圆润湿的两边的弦长为2;if(s>=20)  break;   //判断条件;}cout<<i+1<<endl;   //输出需要的圆的个数;}return 0;
}

题到这里就OK啦。。有什么不对就请直言啦~

           

【南阳ACM】 喷泉装置(一)相关推荐

  1. 喷泉装置(贪心问题)

    喷水装置(一) 时间限制:3000 ms  |  内存限制:65535 KB 难度:3 描述 现有一块草坪,长为20米,宽为2米,要在横中心线上放置半径为Ri的喷水装置,每个喷水装置的效果都会让以它为 ...

  2. 三个数从小到大排序—南阳acm

    问题描述: 现在要写一个程序,实现给三个数排序的功能     输入        输入三个正整数    输出       给输入的三个正整数排序       样例输入 20 7 33      样例输 ...

  3. 南阳ACM 题目722 数独

    数独 时间限制:1000 ms  |  内存限制:65535 KB 难度:4 描述 数独是一种运用纸.笔进行演算的逻辑游戏.玩家需要根据9×9盘面上的已知数字,推理出所有剩余空格的数字,并满足每一行. ...

  4. 南阳acm—题目11

    描述 有一个整型偶数n(2<= n <=10000),你要做的是:先把1到n中的所有奇数从小到大输出,再把所有的偶数从小到大输出. 输入 第一行有一个整数i(2<=i<30)表 ...

  5. 网内计算:可编程数据平面和技术特定应用综述

    网内计算:可编程数据平面和技术特定应用综述 摘要--与云计算相比,边缘计算提供了更靠近终端设备的处理,降低了用户体验的延迟.最新的In-Network Computing范例采用可编程网络元素在数据达 ...

  6. 南阳师范学院ACM集训队博客使用方法

    南阳师范学院ACM集训队博客使用方法 为方便大家交流,我们使用的是同一个用户名和密码,所以请不要随意修改用户名和密码,不然大家都登不上了,谢谢! 首先进入主页:http://www.cnblogs.c ...

  7. java起源英文_Abbreviation 英文词组缩写(来源:南阳理工大学ACM)java

    As we know, we often use a short sequence of characters in place of some words with a very long name ...

  8. 2022南阳理工计科ACM计科TC招新热身赛题解

    这真的是一场模拟赛. 这场比赛整体难度不是很难,有很多都是签到题,并且还有一些题是之前题的变形,大家可以看一下题解去找一下自己比赛时哪一些是没有想明白,或者没办法实现的思路是怎么去实现的 思路是一方面 ...

  9. 南阳理工ACM 题4《ASCII码排序》

    4-ASCII码排序 内存限制:64MB 时间限制:3000ms Special Judge: No accepted:76 submit:115 题目描述: 输入三个字符(可以重复)后,按各字符的A ...

最新文章

  1. 读写测试_UFS3.0手机闪存测试曝光 读写速度足以秒杀超极本!
  2. 游戏开发--开源21---CroftSoft Code Library |Gibdo|JOGR...
  3. 新的MOVE结构,和在项目中实际的感受
  4. Android调试工具_ Stetho
  5. 201110阶段二qt事件
  6. UrlEncode编码算法
  7. 22届腾讯暑期实习三轮面试面经(已oc)
  8. des 向量 java_在JAVA中使用DES算法
  9. 构造函数能默认初始化其静态成员么?
  10. Linux下安装MySQL数据库、禅道
  11. 通信网中的数据报子网和虚电路子网
  12. hrbust 1041(并查集)
  13. JavaScript 3D 散点图
  14. 利用JDK发布webService实例
  15. Smobiler-ListView
  16. 万能ABAP程序修改器
  17. js中的生成器函数Generator
  18. 阿里云服务器租赁注意点
  19. 水溶性花青素连接剂1617497-19-4,diSulfo-Cyanine5 alkyne,二磺酸花青素Cy5炔基
  20. 计算机专业答辩系统抄袭怎么办,计算机毕业设计答辩怎么老是不过?

热门文章

  1. Illustrator 教程:如何在 Illustrator 中变换图稿?
  2. 7-3 组合问题(*)
  3. openGauss企业版安装
  4. A Contextual-Bandit Approach to Personalized News Article Recommendation-论文学习
  5. 页面元素之「¥」符号的使用原则和技巧
  6. 程序员加薪必备,绘制架构图,流程图神器推荐
  7. 有关节日的html素材,节日元素图片素材大全
  8. jQuery事件与特效
  9. 银行智能案防:以“AI技防”堵住违规漏洞
  10. 《魔兽世界》法师的幽默