博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【堆】【kd-tree】bzoj2626 JZPFAR
阅读量:5967 次
发布时间:2019-06-19

本文共 1117 字,大约阅读时间需要 3 分钟。

用堆记录答案。看看当前点是否比堆顶更优。

#include
#include
#include
#include
#include
using namespace std;typedef double db;#define N 100001#define EPS 0.0000001#define INF 999999999999999999.0#define KD 2//ά¶ÈÊýint qp[KD];int n,root,kd=2,K;int dn;struct Ans{ int p[KD],id; db d; Ans(){} Ans(int _p[],int _id,db _d){memcpy(p,_p,sizeof(p)); id=_id; d=_d;}};bool operator < (const Ans &a,const Ans &b){return fabs(a.d-b.d)>=EPS ? a.d>b.d : a.id
Heap;db sqr(const int &x){return (db)x*(db)x;}struct Node{ int minn[KD],maxx[KD],p[KD],id; int ch[2]; void Init() { for(int i=0;i
>1); nth_element(T+l,T+m,T+r+1); T[m].Init(); if(l!=m) T[m].ch[0]=Buildtree(l,m-1,(d+1)%kd); if(m!=r) T[m].ch[1]=Buildtree(m+1,r,(d+1)%kd); Update(m); return m;}void Query(int rt=root){ db t=Dis(T[rt].p,qp); if(Heap.size()
=dd[1]); if((dd[!f]-Heap.top().d>EPS || Heap.size()
EPS || Heap.size()
>1); scanf("%d",&q); for(;q;--q) { while(!Heap.empty()) Heap.pop(); for(int i=0;i

转载于:https://www.cnblogs.com/autsky-jadek/p/4587126.html

你可能感兴趣的文章
PostgreSql 分页limit
查看>>
在MySQL中创建cm-hive使用的数据库及账号
查看>>
linux下限制ip访问
查看>>
linux添加环境变量
查看>>
Dumpsys Input Diagnostics
查看>>
ASP.NET MVC 入门8、ModelState与数据验证
查看>>
Understanding the Router
查看>>
组件居中显示 安卓
查看>>
delete
查看>>
sql server生成不重复的时间字符串
查看>>
DataBase 之 数据库设计六大范式
查看>>
比特币钱包安全
查看>>
Lucene就是这么简单
查看>>
2015年第6届蓝桥杯Java B组省赛试题解析
查看>>
一个有味道的函数
查看>>
zookeeper在linux环境安装
查看>>
Python_异常和模块
查看>>
【386天】跃迁之路——程序员高效学习方法论探索系列(实验阶段143-2018.02.26)...
查看>>
Java数据类型分类
查看>>
springboot应用启动原理(一) 将启动脚本嵌入jar
查看>>