洛谷P1158导弹拦截
来源:互联网 发布:gsm网络的sim卡是什么 编辑:程序博客网 时间:2024/05/22 05:29
这道题是贪心,对于每一个每个点到A和B的距离都是确定的,所以我们可以只考虑一个A所要去覆盖的点,A不能覆盖到的点显然就要让B来覆盖,设
#include <cstdio>#include <cstdlib>#include <ctype.h>#include <algorithm>#define ll long long#define max(a,b) a>b?a:b#define min(a,b) a<b?a:btemplate<typename T>inline T read(){ T f=0,x=1; char c=getchar(); while(!isdigit(c)){if(c=='-')x=-1;c=getchar();} while(isdigit(c))f=f*10+c-'0',c=getchar(); return f*x;}const int maxn=100005;int Ax,Ay,Bx,By;int n,x,y;struct Node{ int A,B; bool operator <(const Node &b)const{ return A<b.A; }}P[maxn];int dist(int A,int B,int C,int D){ return (A-C)*(A-C)+(B-D)*(B-D);}int main(){ Ax=read<int>(); Ay=read<int>(); Bx=read<int>(); By=read<int>(); n=read<int>(); for(int i=1;i<=n;i++){ x=read<int>(); y=read<int>(); P[i].A=dist(Ax,Ay,x,y); P[i].B=dist(Bx,By,x,y); } std::sort(P+1,P+1+n); int ans=1<<30,r2=0; for(int i=n;i>=1;i--){ r2=max(r2,P[i+1].B); ans=min(ans,r2+P[i].A); } printf("%d\n",ans); return 0;}
阅读全文
0 0
- 洛谷 P1158 导弹拦截
- 洛谷 P1158 导弹拦截
- 洛谷P1158导弹拦截
- 洛谷1158-导弹拦截
- 【洛谷P1020】导弹拦截
- 洛谷 P1020 导弹拦截
- 洛谷 P1020 导弹拦截
- 洛谷 P1020 导弹拦截
- 洛谷P1020 导弹拦截
- 洛谷P1020 导弹拦截
- 洛谷 P1020 导弹拦截
- 洛谷P1020/CODEVS1044 导弹拦截(拦截导弹)
- 洛谷P1020导弹拦截题解
- 【NOIP2010】洛谷1158 导弹拦截
- 【DP】洛谷 P1020 导弹拦截
- 拦截导弹
- 拦截导弹
- 拦截导弹
- 为ARM Cortex-M系列芯片编写Bootloader
- 分享python3爬虫及数据分析实战视频教程
- 浅谈HTTP协议
- String那些事
- 我OI生涯的全新开始
- 洛谷P1158导弹拦截
- ReentrantReadWriteLock分析
- ArcGIS10.2下载安装 License Manager、ArcGIS Desktop、ArcGIS Server软件下载及破解
- MATLAB实现三角剖分(Delaunay)算法
- 推荐一款好用的浏览器Yandex
- TensorFlow使用WIndows pip安装
- strars(树状数组)
- 设计模式解密(22)- 访问者模式
- ZOJ 1108 FatMouse's Speed(dp+路径还原)