acdream1197 Points In Cuboid
题目链接:http://acdream.info/problem?pid=1197
题意:给出一些点。每次给出一个长方体,问在长方体中的点的个数。
思路:kd-tree。
const int N=111111;struct node
{int x[3];int L,R;
};node a[N];
int root,n,m;void insert(int u,int k,int d)
{d%=3;if(a[k].x[d]<a[u].x[d]){if(a[u].L==-1) a[u].L=k;else insert(a[u].L,k,d+1);}else{if(a[u].R==-1) a[u].R=k;else insert(a[u].R,k,d+1);}
}int p[3],q[3],ans;void cal(int u,int d)
{if(u==-1) return;int i;for(i=0;i<3;i++) if(a[u].x[i]<p[i]||a[u].x[i]>q[i]) break;if(i==3) ans++;d%=3;if(a[u].x[d]>=p[d]) cal(a[u].L,d+1);if(a[u].x[d]<=q[d]) cal(a[u].R,d+1);
}void deal()
{int i;for(i=1;i<=n;i++){a[i].L=a[i].R=-1;scanf("%d%d%d",&a[i].x[0],&a[i].x[1],&a[i].x[2]);if(i==1) root=i;else insert(root,i,0);}m=getInt();while(m--){for(i=0;i<3;i++) scanf("%d",&p[i]);for(i=0;i<3;i++) {scanf("%d",&q[i]);if(p[i]>q[i]) swap(p[i],q[i]);}ans=0;cal(root,0);printf("%d\n",ans);}
}int main()
{int num=0;while(scanf("%d",&n)!=-1){printf("Case #%d:\n",++num);deal();}
}
acdream1197 Points In Cuboid相关推荐
- aix么把占用的端口释放掉_AIX 环境下Telnet返回提示所有端口已经被占用,处理方法...
Ubuntu环境变量(.profile)加载顺序 Ubuntu下启动的时候的的加载环境变量的过程大致为: /etc/enviroment /etc/profile -->/etc/bash.ba ...
- ArcGIS制图之Sub Points点抽稀
简介 Sub Points工具是 Esri 中国自主开发的一个插件,该工具优先考虑点在空间分布上的均匀合理性,并结合点数据中包含的 "优先级" 属性进行筛选.通过获取每个点在一定范 ...
- R语言可视化分面图、假设检验分组t检验、可视化单变量分组分面箱图(faceting bar plot)、添加误差条(error bar)、添加p值、添加抖动数据点(jitter points)
R语言可视化分面图.假设检验分组t检验.可视化单变量分组分面箱图(faceting bar plot).添加误差条(error bar).添加p值.添加抖动数据点(jitter points) 目录
- seaborn使用violinplot函数可视化小提琴图、使用stripplot函数添加抖动数据点(jittered points)、显示数据的稠密程度
seaborn使用violinplot函数可视化小提琴图.使用stripplot函数添加抖动数据点.显示数据的稠密程度(Seaborn violinplot with data points usin ...
- seaborn可视化水平箱图并添加抖动数据点(Horizontal boxplot with jittered points in Python)
seaborn可视化水平箱图并添加抖动数据点(Horizontal boxplot with jittered points in Python) 目录 seaborn可视化水平箱图并添加抖动数据点( ...
- R语言ggplot2可视化基本散点图(设置X轴使用对数坐标)、并把成对的数据点用线条(line)连接起来、自定义配置线条颜色(Connecting Paired Points with lines)
R语言ggplot2可视化基本散点图(设置X轴使用对数坐标).并把成对的数据点用线条(line)连接起来.自定义配置线条颜色(Customizing Scatterplot Connecting Pa ...
- Matplotlib可视化散点图、配置X轴为对数坐标、并使用线条(line)连接散点图中的数据点(Simple Line Plot with Data points in Matplotlib)
Matplotlib可视化散点图.配置X轴为对数坐标.并使用线条(line)连接散点图中的数据点(Simple Line Plot with Data points in Matplotlib) 目录
- R语言ggplot2可视化箱图、配置抖动数据点(jitter points)避免数据点互相覆盖、并使用线条(line)连接两个箱图中不同分组成对的数据点(jitter on Boxplots)
R语言ggplot2可视化箱图.配置抖动数据点(jitter points)避免数据点互相覆盖.并使用线条(line)连接两个箱图中不同分组成对的数据点(Connecting Paired Point ...
- seaborn使用violinplot函数可视化小提琴图、使用swarmplot函数添加抖动数据点(jittered points)显示数据的稠密程度
seaborn使用violinplot函数可视化小提琴图.使用swarmplot函数添加抖动数据点显示数据的稠密程度(Seaborn violinplot with data points using ...
最新文章
- 100行php代码实现加密端口转发
- python怎么引用已经输入的信息_如何将用户输入存储在python中,然后调用它?
- 如何在 SAP 电商云里设置 Time Restrictions
- html2image乱码问题,HtmlImageGenerator字体乱码问题解决、html2image放linux上乱码问题解决...
- 实体bean里面不要轻易加transient,反序列回来之后会变成null
- 案例:强制开库遭遇ORA-16433的处理过程
- cmd炫酷代码_基本操作!在VS 代码中如何使用Jupyter Notebook
- 附录-SpringFactoriesLoader
- 无代码开发到底是不是伪需求?
- wchar_t转为char*
- 抖音网红怎么赚钱了?通过一百行代码批量下载抖音视频!找到窍门!
- html的表格怎么设置样式,html 静态表格样式的设置
- n位整数去掉m位后求最大值问题
- 搜索算法——深度搜索
- 支持在线大数据SQL查询平台开源项目
- 浅析Volatility内存取证
- python之去掉字符串中空格的方法
- 解决为什么svn没有对号等符号的问题。
- 张艾迪(创始人):世界最高级文明信仰
- 工作中常用的linux命令
热门文章
- 2021年12月电子学会青少年软件编程(图形化)等级考试试卷(一级)答案解析
- Annotation-specified bean name 'brandController' for bean class [com.qingcheng.controller.goods.Bran
- windows 7 桌面IE图标不见了
- Vue浏览器图标修改不起作用
- 直播播放器API(播放器调用方法、参数、接口和事件)
- 2021-2027全球与中国呼吸道病原菌核酸检测试剂盒市场现状及未来发展趋势
- 配置管理--版本控制的目的
- linux系统应用学习(三)--- 动态库静态库
- ubuntu鼠标灵敏度、加速度修改
- 安装配置jdk--解压版