用Python找出k个监测站是否足以监测特定点的程序
假设有一个传感器模块可以监控其附近的环境,半径最大为r。模块监控圈的格点中有一些东西需要监控。因此,放置了k个低功率模块,以便它们只能监视那些特定点。给定半径的平方和低功率模块的k数量,我们必须找出是否可以正确监控这些点。如果可以进行监控,则返回true,否则返回false。
所以,如果输入是半径(j)=4的平方,监控次数points(k)=3,那么输出将是False
若j=4,则监测圆圆周上有4个点;即:(0,2)、(0,-2)、(2,0)和(-2,0)。因此,如果我们引入三个新的监测站,我们就无法对这些点进行全面监测。
示例
让我们看看以下实现以获得更好的理解-
square_set = set([z ** 2 for z in range(44722)])
def solve(j, k):
i = 0
res = 0
while i < (j ** 0.5):
if j - i ** 2 in square_set:
res += 1
i += 1
res *= 4
if k >= res:
return True
else:
return False
print(solve(4, 3))输入
4, 3输出结果
False
热门推荐
10 写字生日祝福语简短独特
11 對好友毕业祝福语简短
12 贺卡祝福语情侣搞笑简短
13 老公生日祝福语简短好看
14 工人生日祝福语简短
15 老板生日祝福语简短语
16 鱼的内涵简短祝福语
17 简短的高考祝福语精选
18 科研文案祝福语简短励志