無所不知的包子
假設饑餓的你在路上撿到了一個包子,但是你沒有吃。原來這是一個無所不知的包子,為了報答你的不吃之恩,它將能回答你的所有問題,並且一定答對。但是它只能回答是或否。你有一張銀行卡,密碼是六個不同的數字,你至少要問多少次包子,才能保證一定能找回密碼? 显然二分法 mathe 发表于 2024-2-3 21:17
显然二分法
如果數字可以相同呢? 還有一個辦法,把999999轉成16進制是f423f,十六進制每一位可轉成4位二進制,則二十位二進制就問二十次。
不知轉二進制跟二分法,哪個更好用? 6位数信息量19.9bit,问一次获取1bit信息,至少问20次 二分法和二进制其实都是等效的 注意密碼是六個不同的數字,故18次足矣。
----------------------------------------------------
前2位10*9=90种可能,7次可以得到。
中2位 8*7=56种可能,6次可以得到
后2位6*5=30种可能,5次可以得到。
或者前3位 10*9*8=720种可能,10次可以得到,后3位 7*6*5=210种可能,8次可以得到。
$P(10,6)=(10!)/(4!)=151200, log_2 151200=17.2$, 18次可以
共151200个不同的密码,按升序排列,然后二分法。 northwolves 发表于 2024-10-31 18:23
注意密碼是六個不同的數字,故18次足矣。
----------------------------------------------------
前2位10* ...
或者前3位 10*9*8=720种可能,10次可以得到
前三位是能在10次(2^10=1024)得到,但是前三位不是720種可能,因為前三位是一起算的,所以可能數量是10*10*10。
只有知道第一位精確值,第二位才會是9種可能。
不知我的理解對否? hujunhua 发表于 2024-10-31 22:30
$P(10,6)=(10!)/(4!)=6300, log_2 6300=12.62$, 13次可以
不太理解你的算法,可否講解?現在「13次最少」已經是結論了嗎?
页:
[1]
2