[NOIP2017 提高组] 奶酪

题目链接:https://www.luogu.com.cn/problem/P3958

试题分析:题目给出了球心坐标与半径,并且给出了奶酪高度,询问我们是否能从奶酪底部到奶酪顶部。

我们可以分出以下几种情况:

1.当没有空洞接触下表面时,输出“No”;

2.当一个空洞同时接触上表面与下表面,输出“Yes”;

3.利用深搜进行遍历,寻找是否有路径可以连通上下表面。

我们需要开三个数组,来存放每个点的坐标,再利用题目已经给出的公式求出两个球心间的距离,如果这个距离小于两倍的r,说明这两个空洞是相通的,此时我们就可以将该空洞标记为已走过,然后继续寻找下一个空洞,如果最后能够走到上表面,我们就可以将flag赋值为1,代表我们有方案,然后输出“Yes”,否则,如果flag=0,我们就输出“No”。

代码如下:

 

posted @ 2022-08-23 17:11  栀璃  阅读(111)  评论(0)    收藏  举报