关注
import numpy as np
def bin_search_sqrt(num):
left, right = 0, num
while right - left > 1:
mid = (left + right) // 2
if mid ** 2 > num:
right = mid
else:
left = mid
return right if right**2 - num < num - left**2 else left
for i in range(15, 37):
print(i,bin_search_sqrt(i),np.sqrt(i))输出: 16 4 4.0
17 4 4.12310562562
18 4 4.24264068712
19 4 4.35889894354
20 4 4.472135955
21 5 4.58257569496
22 5 4.69041575982
23 5 4.79583152331
24 5 4.89897948557
25 5 5.0
26 5 5.09901951359
27 5 5.19615242271
28 5 5.29150262213
29 5 5.38516480713
30 5 5.47722557505
31 6 5.56776436283
32 6 5.65685424949
33 6 5.74456264654
34 6 5.83095189485
35 6 5.9160797831
36 6 6.0看上去好像是可以的?
查看原帖
点赞 1
相关推荐
12-19 19:32
上海理工大学 产品经理 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 2025年终总结 #
170324次浏览 2870人参与
# 找工作,行业重要还是岗位重要? #
85119次浏览 1683人参与
# 职场上哪些行为很加分? #
306381次浏览 3447人参与
# 大家每天通勤多久? #
69351次浏览 440人参与
# 你面试体验感最差/最好的公司 #
15836次浏览 259人参与
# 实习的内耗时刻 #
210744次浏览 1537人参与
# 一人说一个提前实习的好处 #
9553次浏览 192人参与
# 互联网行业现在还值得去吗 #
46813次浏览 351人参与
# 今年你最想重开的一场面试是? #
3482次浏览 64人参与
# 秋招落幕,你是He or Be #
9987次浏览 209人参与
# 重来一次,你会对开始求职的自己说 #
5633次浏览 142人参与
# 实习没事做是福还是祸? #
15800次浏览 239人参与
# 反问环节如何提问 #
126309次浏览 2663人参与
# 礼物开箱Plog #
579次浏览 21人参与
# 团建是“福利”还是是 “渡劫” #
6754次浏览 144人参与
# 我的第一份实习怎么找的 #
208426次浏览 1827人参与
# 工作中听到最受打击的一句话 #
5795次浏览 104人参与
# 比亚迪工作体验 #
74263次浏览 281人参与
# 你小心翼翼的闯过多大的祸? #
10693次浏览 156人参与
# 大厂VS公务员你怎么选 #
74260次浏览 681人参与