猜数字游戏
在一个黑盒排序数组中,不知道取出的某个数是否为最后满足条件的数,就需要做一些调整。
这个代码是二分法的变体,当找到值后还需要继续二分,一直找到满足条件的边界的数才跳出循环
def get(url):
x = 456
if url > x:
return 404
else:
return 200
def main():
first = 0
last = 999
while True:
mid = (last + first) // 2
if get(mid) == 200:
if abs(last - first) <= 2:
print("结果:", mid)
break
else:
first = mid
else:
last = mid
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10亿数据,如何做迁移?
· 推荐几款开源且免费的 .NET MAUI 组件库
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 易语言 —— 开山篇
· Trae初体验