密码问题
题目说明
根据密码本和电子钥匙,破解笔记本电脑的密码。
密码本是一个非降的整数序列,电子钥匙是一个整数,得到密码的方法是在密码本中找到最接近电子钥匙的整数(如果多个符合条件,输出最小的一个)。
例如:
密码本为下面的列表a=[1,22,43,45,45,55,60,70,89],电子钥匙为整数44,满足条件的整数为43和45,最终的密码为43。
补全下面的代码:
a=[1,22,43,45,45,55,60,70,89] #密码本
k=int(input()) #k为电子钥匙
l=0
r=8
while l+1!=r:
mid=int ( ① )
if a[mid]<k:
②
else:
r=mid
if a[r]==k:
③
if k-a[l] <= ④ :
print(a[l])
else:
print(⑤)
评分标准
(1)(l+r)/2;(2分)
(2)l=mid;(2分)
(3)break;(2分)
(4)a[r]-k;(2分)
(5)a[r]。(2分)
本题为编程题,提交代码并运行通过测试点后判分。
正在加载题目数据…
子题
该题型需在试卷/作业中作答,单题练习暂不支持
答案解析