NOIP 2017 D2T1 奶酪
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<algorithm>
#include<cmath>
#include<cstring>
using namespace std;
typedef struct node {
double x,y,z;
} qiu;
qiu a[1005];
bool cmp(qiu aa,qiu bb) {
return aa.z < bb.z ;
}
double dis(qiu p1,qiu p2) {
return sqrt(pow((p1.x -p2.x ),2)+pow((p1.y -p2.y ),2)+pow((p1.z -p2.z ),2));
}
bool flag;
long long n;
double h,r;
bool b[1005];
long long link[1005][1005];
bool fail[1005];
//void dfs(long long id) {
// if(flag) return;
// long long i;
// for(i=1; i<=n; i++) {
// if(i==id) continue;
// if(!b[i]&&link[id][i]<=2*r) {
// b[i]=1;
// if(a[i].z + r >=h){
// return;
// }else{
// dfs(i);
// }
//
// b[i]=0;
// }
// }
//}
void dfs(long long id,long long sum) {
if(flag) return;
if(sum + r >= h) {
flag=1;
return;
}
register int i;
for(i=1; i<=n; i++) {
if(i==id) continue;
if(!b[i]&&link[id][i]<=2*r&&!fail[i]) {
b[i]=1;
dfs(i,a[i].z);
b[i]=0;
fail[i]=1;
}
}
}
int main() {
long long t;
// freopen("test.in","r",stdin);
// freopen("cheese.out","w",stdout);
scanf("%lld",&t);
while(t--) {
memset(b,0,sizeof(b));
memset(fail,0,sizeof(fail));
bool succ=0;
scanf("%lld%lf%lf",&n,&h,&r);
for(long long i=1; i<=n; i++) {
scanf("%lf%lf%lf",&a[i].x ,&a[i].y ,&a[i].z );
}
sort(a+1,a+1+n,cmp);
for(register int i=1; i<=n; i++) {
for(long long j=1; j<=n; j++) {
link[i][j]=dis(a[i],a[j]);
link[j][i]=dis(a[i],a[j]);
}
}
// for(long long i=1;i<=n;i++){
// cout<<a[i].x <<" "<<a[i].y <<" "<<a[i].z <<endl;
// }
for(register int i=1; i<=n; i++) {
if(abs(a[i].z )-r>0) break;
else {
// cout<<i<<endl;
flag=0;
dfs(i,a[i].z);
if(flag) {
cout<<"Yes"<<endl;
succ=1;
break;
}
}
}
if(!succ) cout<<"No"<<endl;
// if(abs(a[1].z) - r >0) {
// cout<<"No"<<endl;
// continue;
// } else {
// flag=0;
// dfs(1);
// if(flag==1){
// cout<<"Yes"<<endl;
// continue;
// }
// }
}
return 0;
}
NOIP 2017 D2T1 奶酪的更多相关文章
- NOIP 2017 解题报告
---恢复内容开始--- NOIP 2017 的题真的很难啊,怪不得当年我这个萌新爆零了(当然现在也是萌新)越学越觉得自己什么都不会. 想要成为强者要把这些好题都弄懂弄透 至少现在6道题我都比较陌生 ...
- NOIP 2017 列队 - Splay - 树状数组
题目传送门 传送点I 传送点II 题目大意 (家喻户晓的题目应该不需要大意) (我之前咋把NOIP 2017打成了NOIP 2018,好绝望) Solution 1 Splay 每行一颗Splay,没 ...
- 【游记】NOIP 2017
时间:2017.11.11~2017.11.12 地点:广东省广州市第六中学 Day1 T1:看到题目,心想这种题目也能放在T1? 这个结论我之前遇到过至少3次,自己也简单证明过.初见是NOIP200 ...
- noip 2018 d2t1 旅行
noip 2018 d2t1 旅行 (题目来自洛谷) 给定n个城市,m条双向道路的图, 不存在两条连接同一对城市的道路,也不存在一条连接一个城市和它本身的道路.并且, 从任意一个城市出发,通过这些道路 ...
- NOIP 2017 小凯的疑惑
# NOIP 2017 小凯的疑惑 思路 a,b 互质 求最大不能表示出来的数k 则k与 a,b 互质 这里有一个结论:(网上有证明)不过我是打表找的规律 若 x,y(设x<y) 互质 则 : ...
- 历年真题 未完成(Noip 2008 - Noip 2017)
Noip 2008 :全部 Noip 2009 :全部 Noip 2010 :AK Noip 2011 :AK Noip 2012 : Vigenère 密码,国王游戏,开车旅行 Noip 2013 ...
- 「NOIP 2017」列队
题目大意:给定一个 $n times m$ 的方阵,初始时第 $i$ 行第 $j$ 列的人的编号为 $(i-1) times m + j$,$q$ 次给出 $x,y$,让第 $x$ 行 $y$ 列的人 ...
- 洛谷 P3951 NOIP 2017 小凯的疑惑
洛谷 P3951 NOIP 2017 小凯的疑惑 题目描述 小凯手中有两种面值的金币,两种面值均为正整数且彼此互素.每种金币小凯都有 无数个.在不找零的情况下,仅凭这两种金币,有些物品他是无法准确支付 ...
- NOIp 2017 奶酪 【并查集】 By cellur925
题目传送门 Orz去年考场上做这道题的我应该还在抱怨没学过空间几何,不一会太困了就开始打瞌睡,然后为了防止睡觉开始在devc++上写默写离骚(逃 思路:如果两个空洞相交,那么把他们并在一个集合里.最后 ...
随机推荐
- C语言带参宏定义和函数的区别
带参数的宏和函数很相似,但有本质上的区别:宏展开仅仅是字符串的替换,不会对表达式进行计算:宏在编译之前就被处理掉了,它没有机会参与编译,也不会占用内存.而函数是一段可以重复使用的代码,会被编译,会给它 ...
- Sublime Text 报“Pylinter could not automatically determined the path to lint.py
Pylinter could not automatically determined the path to lint.py. please provide one in the settings ...
- XML学习2 xml生产式
- 洛谷 P1578 奶牛浴场
https://www.luogu.org/problemnew/show/P1578 题解 另外这题有一些小坑,洛谷的题解里面有讲 #pragma GCC optimize("Ofast& ...
- ViewPager的使用总结
这两天公司项目一直需要用到ViewPager来显示各式各样的Banner图,因而再次做了一些总结,不全后续应该还会更新的. 1.ViewPager要想做到一个界面显示多个items 有两种方式 ,一种 ...
- python采用sqlachmy购物商城
一.流程图: 二.目录结构: C:\USERS\DAISY\PYCHARMPROJECTS\S12\MARKET │ __init__.py │ __init__.pyc │ ├─backend │ ...
- 安卓 使用LruCache 加载图片 遇到的问题
本来 使用listview的时候 加载大图片的时候 会遇到内存溢出而导致崩溃. 但是使用LruCache的时候 原本以为可以 解决这个问题. 但是发现还是出现了内存溢出的情况. 困扰很久 另外, ...
- js实现对象或者数组深拷贝
今天遇到个问题,就是vue绑定的数组在push中所有的数组都会跟着改变.这个主要是因为 JavaScript中对象或者数组等引用类型,直接拷贝,改变一个另外一个也会改变: 有个简单的方法就是先转换为字 ...
- 《Openstack的搭建》RHEL6.5
Openstack就是搭建一个较为完整的虚拟化平台,把一个完整的物理机划分成若干个虚拟机来跑,从而实现资源的充分利用. Openstack对硬件的要求很高,要是你的物理机内存是4G的话,虚拟机的内存给 ...
- Kettle-Spoon入门示例
Spoon 是Kettle的设计调试工具 [Demo文档下载] https://files.cnblogs.com/files/shexunyu/Kettle-Spoon-Demo%E5%B8%AE% ...