#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. sed 删除指定行

    参考:http://blog.sina.com.cn/s/blog_4ba5b45e0102e7l2.html

  2. PAT 1040有几个PAT

    原题:https://pintia.cn/problem-sets/994805260223102976/problems/994805282389999616 1040 有几个PAT (25 分) ...

  3. python的pip管理工具

    Python有两个著名的包管理工具easy_install.py和pip.在Python2.7的安装包中,easy_install.py是默认安装的,而pip需要我们手动安装. 在此进行编译安装pip ...

  4. idea | 命名空间改过后重新导入项目方法

    file菜单-->Open-->找到项目中pom文件-->会提示as project 和as file-->选择as project,会自动生成idea所有相关的文件

  5. Django (十) 项目部署 1

    阿里云部署项目 1, 购买阿里云ECS云服务器(可免费试用1个月) 2, 阿里云实例更换为Ubuntu 3, 安全组配置 4, xshell远程连接 5, 创建虚拟环境: 5.1 linux基本命令 ...

  6. __next__,__iter__实现迭代器,斐波那契数列

    迭代器__next__,__iter__ 基于__next__和__iter__方法实现的迭代器 class Foo: def __init__(self,n): self.n = n def __i ...

  7. Metasploits之ms10_018

    漏洞详情:https://technet.microsoft.com/library/security/ms10-018 一准备: 1:kali Linux系统 192.168.195.129 2:W ...

  8. Ubuntu-通过v2版本的rancher安装部署k8s

    环境: ubuntu:16.04+(64位) CPU:2C MEM:>4G docker:17.03.2 1.13.1 1.12.6 基础配置:(若是云服务器,下列只需要放行端口) >&g ...

  9. BS3 多级菜单

    <div class="container"> <div class="row"> <h2>Multi level drop ...

  10. 一行JS搞定快速关机

    一.在本地新建一个文件js文件 JS代码: (new ActiveXObject("Shell.Application")).ShutdownWindows(); 二.设置快捷键 ...