算法与数据结构实验题 5.2 Missile
1、题目:
2、解题思路:
把每个点对应的两条半径求出,之后对d1进行升序排序,对应d2也改变位置。其中一个圆心的半径r1确定之后,除去第一个圆包围的点,在其余点中找到另外一个圆的最长的半径r2,此时r1+r2就是所求的包围所有点的半径之和,与最小值进行比较即可。要注意的是r1的半径可能是0,这种情况要另外考虑。
3、代码:
#include<iostream>
#include<algorithm>
using namespace std;
struct Node
{
int d1;
int d2;
} node[100001];
int cmp(Node n1, Node n2)
{
return n1.d1 < n2.d1;
}
int main()
{
int x1,x2,y1,y2;
int n,i,x,y;
cin>>x1>>y1>>x2>>y2;
cin>>n;
for(i=0; i<n; i++)
{
cin>>x>>y;
node[i].d1=(x-x1)*(x-x1)+(y-y1)*(y-y1);
node[i].d2=(x-x2)*(x-x2)+(y-y2)*(y-y2);
}
sort(node,node+n,cmp);//对d1升序排序
int r1=0,r2=0,ans=-1;
for(i=n; i>0; i--)
{
r1= node[i-1].d1;
if(i<n)
if(node[i].d2>r2)
{
r2=node[i].d2;
}
if(ans>(r1+r2)||ans<0)
{
ans=r1+r2;
}
}
//r1=0时
if(node[0].d2>r2)
{
r2=node[0].d2;
}
if(ans>r2||ans<0)
{
ans=r2;
}
cout<<ans<<endl;
return 0;
}
算法与数据结构实验题 5.2 Missile的更多相关文章
- 算法与数据结构实验题 6.4 Summary
★实验任务 可怜的 Bibi 丢了好几台手机以后,看谁都像是小偷,他已经在小本本上记 下了他认为的各个地点的小偷数量. 现在我们将 Bibi 的家附近的地形抽象成一棵有根树.每个地点都是树上的 一个节 ...
- 算法与数据结构实验题 6.3 search
★实验任务 可怜的 Bibi 刚刚回到家,就发现自己的手机丢了,现在他决定回头去搜索 自己的手机. 现在我们假设 Bibi 的家位于一棵二叉树的根部.在 Bibi 的心中,每个节点 都有一个权值 x, ...
- 算法与数据结构实验题 4.2 小 F 打怪
★实验任务 小 F 很爱打怪,今天因为系统 bug,他提前得知了 n 只怪的出现顺序以及击 倒每只怪得到的成就值 ai.设第一只怪出现的时间为第 1 秒,这个游戏每过 1 秒 钟出现一只新怪且没被击倒 ...
- 算法与数据结构实验题 4.1 伊姐姐数字 game
★实验任务 伊姐姐热衷于各类数字游戏,24 点.2048.数独等轻轻松松毫无压力.一 日,可爱的小姐姐邀请伊姐姐一起玩一种简单的数字 game,游戏规则如下: 一开始桌上放着 n 张数字卡片,从左到右 ...
- 算法与数据结构实验题6.4 order (二叉树)
1.题目: 2.代码: #include<iostream> #include<algorithm> using namespace std; struct Node { in ...
- 基础算法和数据结构高频题 II
DFS的两种理解方式:1. 按照实际执行顺序模拟 (适合枚举型DFS,下节课内容)2. 按照DFS的定义宏观理解 (适合分治型DFS,本节课内容) 1 Convert BST to Greater T ...
- 第三章 基础算法和数据结构高频题 I
区间类问题 1 Missing Interval public List<String> findMissingRanges(int[] nums, int lower, int uppe ...
- DS实验题 sights
算法与数据结构实验题 6.3 sights ★实验任务 美丽的小风姑娘打算去旅游散心,她走进了一座山,发现这座山有 n 个景点, 由于山路难修,所以施工队只修了最少条的路,来保证 n 个景点联通,娇弱 ...
- DS实验题 order
算法与数据结构 实验题 6.4 order ★实验任务 给出一棵二叉树的中序遍历和每个节点的父节点,求这棵二叉树的先序和后序遍历. ★数据输入 输入第一行为一个正整数n表示二叉树的节点数目,节点编号从 ...
随机推荐
- jQuery HTML节点元素修改、追加的方法 html()、append()、prepend()、
我们先拟定一个代码场景 <div>start</div> <p>123</p> <div>end</div> html() 操作 ...
- osx 文本编辑工具下载地址Sublime Text 3
下载地址: http://www.sublimetext.com/3 Sublime Text 是一个代码编辑器(Sublime Text 3是收费软件,但可以无限期试用),也是HTML和散文先进的文 ...
- eclipse 使用(一)单步调试
昨天终于将取数据的流程走通了.但是没有成功获得数据.原因是,把服务器中的数据库还原到了本地.而测试数据是写到了本地.把数据给覆盖了.早上来了之后,赶紧在服务器上把数据弄了一下. 之后开始跑代码. 项目 ...
- iOS学习-----真机测试过程
原文 http://www.th7.cn/Program/IOS/201407/233103.shtml 1:进入苹果开发者平台 2:进入Member Center 3:输入开发者账号和密码 4: ...
- 文件hash数据库
unit YxdDB; interface uses Windows, Classes, SysUtils, SyncObjs; type TYXDDBValue = packed record Si ...
- Atcoder CODE FESTIVAL 2016 qual C 的E题 Encyclopedia of Permutations
题意: 对于一个长度为n的排列P,如果P在所有长度为n的排列中,按照字典序排列后,在第s位,则P的value为s 现在给出一个长度为n的排列P,P有一些位置确定了,另外一些位置为0,表示不确定. 现在 ...
- linux 安装软件程序
1.用aptitude管理软件包 查看已安装的/未安装的等软件包 无法通过aptitude看到一个细节是所有跟某个特定软件包关联的所有文件的列表.利用dpkg命令能看到这个列表. dpkg -L pa ...
- Linux经典书籍推荐
入门篇 <LINUX权威指南>书不错,写的很全面也比较广,涉及的不深,做为入门书籍不错,可以比较全面的了解linux .另外比较热门的也可以看看<鸟哥的私房菜>等书,偏管理类的 ...
- autoit 中_GUICtrlStatusBar_SetBkColor失效的解决办法
#include <GuiConstantsEx.au3> #include <GuiStatusBar.au3> #include <WinAPI.au3> #i ...
- google快捷键,通过浏览器本身来查看
今天玩google浏览器时发现一个不需要访问google就能查看其快捷键的方式,再此记录一下,以备后用. 1:打开Google浏览器 2:打开开发者工具,有三种方法 2-1:按F12快捷键 2-2:按 ...
