#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 奶酪的更多相关文章

  1. NOIP 2017 解题报告

    ---恢复内容开始--- NOIP 2017 的题真的很难啊,怪不得当年我这个萌新爆零了(当然现在也是萌新)越学越觉得自己什么都不会. 想要成为强者要把这些好题都弄懂弄透 至少现在6道题我都比较陌生 ...

  2. NOIP 2017 列队 - Splay - 树状数组

    题目传送门 传送点I 传送点II 题目大意 (家喻户晓的题目应该不需要大意) (我之前咋把NOIP 2017打成了NOIP 2018,好绝望) Solution 1 Splay 每行一颗Splay,没 ...

  3. 【游记】NOIP 2017

    时间:2017.11.11~2017.11.12 地点:广东省广州市第六中学 Day1 T1:看到题目,心想这种题目也能放在T1? 这个结论我之前遇到过至少3次,自己也简单证明过.初见是NOIP200 ...

  4. noip 2018 d2t1 旅行

    noip 2018 d2t1 旅行 (题目来自洛谷) 给定n个城市,m条双向道路的图, 不存在两条连接同一对城市的道路,也不存在一条连接一个城市和它本身的道路.并且, 从任意一个城市出发,通过这些道路 ...

  5. NOIP 2017 小凯的疑惑

    # NOIP 2017 小凯的疑惑 思路 a,b 互质 求最大不能表示出来的数k 则k与 a,b 互质 这里有一个结论:(网上有证明)不过我是打表找的规律 若 x,y(设x<y) 互质 则 : ...

  6. 历年真题 未完成(Noip 2008 - Noip 2017)

    Noip 2008 :全部 Noip 2009 :全部 Noip 2010 :AK Noip 2011 :AK Noip 2012 : Vigenère 密码,国王游戏,开车旅行 Noip 2013 ...

  7. 「NOIP 2017」列队

    题目大意:给定一个 $n times m$ 的方阵,初始时第 $i$ 行第 $j$ 列的人的编号为 $(i-1) times m + j$,$q$ 次给出 $x,y$,让第 $x$ 行 $y$ 列的人 ...

  8. 洛谷 P3951 NOIP 2017 小凯的疑惑

    洛谷 P3951 NOIP 2017 小凯的疑惑 题目描述 小凯手中有两种面值的金币,两种面值均为正整数且彼此互素.每种金币小凯都有 无数个.在不找零的情况下,仅凭这两种金币,有些物品他是无法准确支付 ...

  9. NOIp 2017 奶酪 【并查集】 By cellur925

    题目传送门 Orz去年考场上做这道题的我应该还在抱怨没学过空间几何,不一会太困了就开始打瞌睡,然后为了防止睡觉开始在devc++上写默写离骚(逃 思路:如果两个空洞相交,那么把他们并在一个集合里.最后 ...

随机推荐

  1. C语言带参宏定义和函数的区别

    带参数的宏和函数很相似,但有本质上的区别:宏展开仅仅是字符串的替换,不会对表达式进行计算:宏在编译之前就被处理掉了,它没有机会参与编译,也不会占用内存.而函数是一段可以重复使用的代码,会被编译,会给它 ...

  2. 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 ...

  3. XML学习2 xml生产式

  4. 洛谷 P1578 奶牛浴场

    https://www.luogu.org/problemnew/show/P1578 题解 另外这题有一些小坑,洛谷的题解里面有讲 #pragma GCC optimize("Ofast& ...

  5. ViewPager的使用总结

    这两天公司项目一直需要用到ViewPager来显示各式各样的Banner图,因而再次做了一些总结,不全后续应该还会更新的. 1.ViewPager要想做到一个界面显示多个items 有两种方式 ,一种 ...

  6. python采用sqlachmy购物商城

    一.流程图: 二.目录结构: C:\USERS\DAISY\PYCHARMPROJECTS\S12\MARKET │ __init__.py │ __init__.pyc │ ├─backend │ ...

  7. 安卓 使用LruCache 加载图片 遇到的问题

    本来 使用listview的时候 加载大图片的时候 会遇到内存溢出而导致崩溃. 但是使用LruCache的时候 原本以为可以 解决这个问题.  但是发现还是出现了内存溢出的情况.   困扰很久 另外, ...

  8. js实现对象或者数组深拷贝

    今天遇到个问题,就是vue绑定的数组在push中所有的数组都会跟着改变.这个主要是因为 JavaScript中对象或者数组等引用类型,直接拷贝,改变一个另外一个也会改变: 有个简单的方法就是先转换为字 ...

  9. 《Openstack的搭建》RHEL6.5

    Openstack就是搭建一个较为完整的虚拟化平台,把一个完整的物理机划分成若干个虚拟机来跑,从而实现资源的充分利用. Openstack对硬件的要求很高,要是你的物理机内存是4G的话,虚拟机的内存给 ...

  10. Kettle-Spoon入门示例

    Spoon 是Kettle的设计调试工具 [Demo文档下载] https://files.cnblogs.com/files/shexunyu/Kettle-Spoon-Demo%E5%B8%AE% ...