烧脑面试题:老鼠和毒药问题怎么解?二进制和易经八卦有啥关系?李永乐老师告诉你
ฝัง
- เผยแพร่เมื่อ 25 ส.ค. 2018
- 视频题目:
有100瓶液体 其中99瓶是水儿 有1瓶是毒药
如果老鼠吃了带毒药的水的话。那么这个老鼠在一周后就会死亡
现在问,给你一周的时间至少需要多少只小白鼠
才能知道哪一瓶是毒药
类似题目:
有 1000 个一模一样的瓶子,其中有 999 瓶是普通的水,有一瓶是毒药
任何喝下毒药的生物都会在一星期之后死亡
现在,你只有 10 只小白鼠和一星期的时间
如何检验出哪个瓶子里有毒药?
答案详见视频
火热视频推荐:
--------------------------------------
宇宙中最大的数是啥? • 宇宙中最大的数是啥?居然能让人脑变黑洞?李永...
--------------------------------
支配宇宙的法则:什么是因果? • 支配宇宙的法则:什么是因果?过去、现在、未来...
相对论视频推荐:
--------------------------------------
光速为什么不能被超越? • 光速为什么不能被超越?李永乐老师老师6分钟讲...
--------------------------------
支配宇宙的法则:什么是因果? • 支配宇宙的法则:什么是因果?过去、现在、未来...
--------------------------------
狭义相对论:时间膨胀是怎么回事? • 狭义相对论:时间膨胀是怎么回事?如何实现星际...
视频禁止搬运
有字幕
李永乐老师 不能座標化10*10 20隻老鼠各喝直線10瓶嗎
老师解释解释离子推进器?
第64位犯人是安全的
我被殺了。
老师,站第64位 ✺◟(∗❛ัᴗ❛ั∗)◞✺
成為老師口中的小朋友視乎已經成了眾人的夢想
李老師您好!我是一位數學愛好者。
這道題我嘗試用二進制這麼解釋吧:
第一、首先是次數,因為共有100人按奇偶地排除,所以每一輪的剩餘量就是「總數除以2,捨余數(因為余數必為奇數)」,即共有100/50/25/12/6/3/1,共六輪。
第二、一開始每個人按1,0報數,1的人就槍斃,所以就是要盡量令自己喊出0。也就是說六輪都必須喊出0,第七輪喊出1(剩一人),按此推算,100的二進制裡,六位是0,第七位是1的數,就是「1000000」轉算成十進制就是64了。
同理延伸,我們可以從二進制的表示上,得知任一號碼的囚犯於第幾輪會死,比方12的二進制是1100,從右數第三位開始有1,所以12位的囚犯是第三輪死的;48的二進制是110000,從右數第五位開始有1,所以48位的囚犯是第五輪死的。
請李老師多多指教!
找的就是你这个答案
你的解說我比較看得懂,而且可以反推很多東西,謝謝你
Keo Yu 一共100个小朋友被枪毙……最后剩下的经常问李老师问题😊
100/2=50......0
50/2=25......0
25/2=12......1
12/2=6......0
6/2=3......0
3/2=1......1
1/2=0......1
1100100
0个2∧0=0
0个2∧1=0
1个2∧2=4
0个2∧3=0
0个2∧4=0
1个2∧5=32
1个2∧6=64
最后的数字为64,所以按顺序排列的第64号囚犯最终可以存活下来。
公式是这样子的
Keo Yu 你这么牛,能帮我算算下 我斩奇数后再斩偶数这样交叉轮流斩 第几个能活?
老师真的很神,我是个辍学生,这个二进制的问题困恼我许久,这次基本听懂了概念。清晰易懂,赞。
看了最後一個問題及網友的討論,讓我欣敬好多人都提出不同的思維 (對的不對的都有趣,對的當然能解決問題更好)。。。太棒的視頻。 (數學真的不只是數學)
很大程度提高了我對二進制範疇的知識和理解。
厲害
李老師,您連易經八卦都懂,真是太太太太太佩服您了。
永樂老師教的真好,謝謝謝老師。
虽然我只是个九年义务制初中文化,但是很庆幸我看懂了李老师的视频。老师最后出的题目,人数是100人,100换算成2进制就是7位数,我们用7位数的2进制绝对足以标记出100以内的“幸存者”,每一批筛选出的第一位幸存者将会是下一批筛选最先死的那位。二进制从右向左,第一批最先死的是0000001,第二批最先死的是0000010,第三批最先死的是0000100,第四批最先死i的是0001000,第五批最先死的是0010000,第六批最先死的是0100000,第七批最先死的是1000000(也就是第六批的最后且唯一的幸存者),1000000换成十进制就是64。有可能是我理解的太复杂了,如果有更简单的理解,劲请各位指教。
Leon Wong 2的6次方
优秀
这个理解很好
厉害,怪不得写出永乐大典
原来他就是原作者
666666
永乐大典并非由李老师编写,而是以李老师的名字命名而已。
谢谢科普,我一直以为永乐大典就是他写的
啊,原来如此啊!我说嘛,解缙怎么可能编得出永乐大典呢
支持博闻的李老师科普!从视频内容中几分钟就懂一生受用东西!
李永乐老師的博學令人惊嘆👍👍👍👍
學习您的視頻更我覺得 童心仍在☺️☺️☺️☺️
李老师您好,我也是个数学爱好者,中学时曾经参加过各种奥赛。对于您的这个视频我有两点建议:
1)其实不用全部对N个瓶子标号;标到第N-1瓶即可。如果所有的老鼠都没死,说明毒药是最后留下来的这瓶。这么做的好处是当N=2^K这种极限情形时,“小盆友”们不会觉得需要(K+1)只老鼠才行。其实K只老鼠就够了。
2) 您能不能够发散到普遍情形(只有一瓶毒药,发作期为一星期)
即:假设有N个瓶子,允许在M个星期之内测出哪瓶是毒药,则至少需要多少只老鼠?
或者:假设有K只老鼠,允许在M个星期之内测出哪瓶是毒药,则最多能测多少个瓶子?
或者:假设有N个瓶子和K只老鼠,则最快能在几星期后测出哪瓶是毒药?
我相信这些普遍情形是各大公司面试“大盆友”们才会真正遇到的。
1)其實從0開始編號到N-1即可,如果所有的老鼠都没死,说明毒药是0號瓶。
最後一個問題 100="1100100" 每除以2則數字向右位移,數字最左側補0,最右側除去。當有任何的1在數字的最右側,則被槍斃(因為是奇數),所以想活著就得當"1000000"
答案对的,算法错的
算法对的
这是我第一次不明觉厉
对不起 我没有看懂……QAQ
@@kebirayn3616算法没错 就是这样
李老师好棒,说的非常透彻👍
-萬個讚.二進制成日攪到我頭昏腦漲!李老師講解,十分簡易,謝謝.
八卦更因此明解更多.:-))
老师说“非常的简单”的时候,我羞愧了( ¨̮ )
突然觉得光是看老师的视频就有能力上天了!太厉害了👍
太感谢了,通过这种方法可以算出好多问题了
這個頻道好,又有教育意義
蠻有趣的問題,聽起來很複雜但答案很簡單。100人總共要處刑6次會剩下1人,依課程的解法可以用二進來解1000000(1後面補上六個0),或是直接以10進表示為2^6(在每次處決後都還是保持為偶數),除了算錯外,要是第一位是工程師心血大概也是會泡湯(從0開始算)
在100号内挑出这么一个号,在每一次人数减半后号数仍然是偶数...那翻译成数学语言就是在1-100内挑一个数,能尽可能次数多地被2整除...那么就反过来来计算,0-100范围内哪个数含的因数2的个数最多?假设2的n次幂还小于100,2的n+1次幂就大于100了, 那么n是6,2的6次幂就是64..
用二進制來解是
100(十進制)=1100100(二進制) 每次除2相當於去掉一個位
由於偶數在二進制是0字尾,所以想要做最後一個就必須是1字在最大位值的數位
即1000000
換成十進制=64
嗯 这个思路也是可以的
思路不错
@銀河糖果店 我也想知道哈哈哈哈
@銀河糖果店 看视频知道二进制可写作 X*2(位数减一),除2就变成X*2(位数减二),相当于整体往后挪动一个位置,相当于少了一位数
李永乐老师,感谢!
李永乐老师太神了!
排在第64個,是最後能存活的人,因為它是2的6次方倍,只到最後才會變成1.
这是腾讯某部门的编程面试大题...居然在这里看到了答案,厉害
1
遍历或冒泡法解决
hahaha居然在这里见到你~~
@@user-zk8ij5od3z 算法题面试,如果你提出遍历,恭喜,你被pass了。
leetcode 上的poor pig
李永乐老师太有趣了,赞
谢谢李老师,上学时一直不学懂二进制,您讲得就很容易懂....
上学的时候一直觉着学习好没有用,看完李老湿的视频之后觉着学习好真🐂🍺😳
懂的時候時間已不再當年😂
10:21,李老师“嘤嘤嘤”🤣🤣
推推
11:22🐑🐑🐑
好厲害!!感謝老師製作的優質影片🎉
谢谢李老师分享
答案64~
謝謝李老師每次的教學~不管看懂不懂我都會盡量吸收能理解的部分~我非數理科系出身~但是還蠻喜歡一些數學問題~想到小時候玩的一個小遊戲就是9宮格排數字~讓每行列加總等於15~之後看了金庸小說有寫16宮格加總等於34的規則~我開始感興趣是否各宮格都有這規律可以進行排列~發現25宮格確實可以排出總和為65的排列~49宮格可以排出總和為175的排列~但是我發現似乎偶數平方的宮格除了16宮格~其他都無法進行排列~這自古以來就是如此嗎?
63
@@perfectwong7242 奇数直接枪毙了还63呢
@@douglasLeon77
想清楚
@@perfectwong724263第一次排队就枪毙
@@perfectwong7242 我都被你带晕了。就是64。你可以逆向验证,最后活下来的只有一个人,此时他是1号,那么之前一轮他本是2号,再之前一轮他本是4号,则最开始他是64号。还有,如果是从0开始报数,那么64号也会被枪毙。
希望老師可以講解更多簡單扼要關於太極八卦的視頻,謝謝
谢谢你的教材。
以前学2进制都不知道怎么用,现在明白了。
讲的真好,教学圣手
我感覺就是跟 2 的 N 次方有關
如果 N = 6 就是 64 , N = 7 就是 128 會超過囚犯 100 人
所以應該就是 64 號
同理 如果 囚犯有 1000 人 , 應該就是 512 號
有 5000 人 , 就是要排在 4096 號
一開始就有這樣的想法 ~ 雖然沒去驗證 ~ 不知道對不對 ( 雖然我是認為應該對 XD )
老鼠喝毒藥的問題 ... 讓我想起了小時候曾經玩過的數字卡遊戲
就是有 6 張卡 , 6 張卡的第 1 個數字分別寫上了 1 , 2 , 4 , 8 , 16 , 32
每張卡的最後 1 個數字就是都寫上 63 那個遊戲
大家好,我叫朋友,姓小,请大家多多关照
都是腰椎间盘,为何你那么突出?
小朋友,你好😊
十万个为什么小朋友
JULIAN ALEMANIA 你是李老师最后一个问题剩下的那个小朋友吗?
@@user-kh8fl3ok9m 当然,否则李老师怎么能听到他的遗言?
李老师太厉害了!
以前如果有个这样好的李老师,我一定好好学习
又是小朋友啦 😂😂
很棒~
我以前聽到的題目是說1000瓶水和10隻老鼠的,
但解題方法是一樣的...
因為 2 的 7 次方大於 100
2 的 10 次方大於 1000
所以就算 10 萬瓶水 , 也只要 16 隻老鼠
這個視頻道視讓我想起了小時候玩的數字卡遊戲 和 外星人繁衍的故事
第一只老鼠要一天喝下500瓶不同药水 没有毒也撑死了
@@user-lk2wx6gt7i 17隻
@@user-lk2wx6gt7i 一万瓶,也就是毒药要被稀释一万倍,不一定能毒死老鼠。
谢谢!有为的青年!
最近在学习四色地图问题,不知道李老师对这个有没有研究,可否讲一下
哇!我第一次面试就是这个问题,老师讲得真好!
高手
葉飛 应该是计算机相关, 可能是C语言
算法工程师。
第一次有点紧张答得并不好,我想的是两杯毒药合到一起也有毒,用二分查找总共只用7只,但是有个条件是毒会潜伏七天,这个想法就不行了
今天面试也遇到这个问题了。。。。
你们都是啥工作啊,问题这么难
1到100编号,总共7位,第一次砍掉的是最后一位是1的,第二次是倒数第二位是1的。一共砍6次,所以剩下的二进制数是1000000,换算过来是64
金小萌 十进制的方法也可以求解的
金小萌 大多数人都是对的,然而我选32
我仅代表李老师他叔恭喜你,,你是唯一看懂他视频的人。
为什么第二次是倒数第二位是1的。。。想了五分钟都没想通,然后发现自己不懂二进制怎么做除法……
老师,我没看懂。问题是最少需要几只老鼠,可是解题中老鼠的只数好像是100的二进制表达位数(7位)决定的。
这集真牛!!!通俗易懂,条理真清楚
感謝李老師,太強了。
哈哈,八卦和二进制的关系,南怀瑾有本书写过,好像叫易经杂谈啥的。非常有趣的想法,跟李老师说的差不多。当然,南怀瑾指的这个二进制还可以扩展到两个量子比特
忽生忽灭
时间和空间是相互的?极小尺度是没有时间这个量的?极大尺度对应极大时间?阴阳本来就是一个东西…无,不知生不知死,知天命就是要坦然面对生活?
学好数理化,判了死刑都不怕
笑出了声
押韵狂魔
把二进制讲的这么简单易懂,厉害!
学习了,谢谢老师
如果我計算的沒錯應該會是第64個人可以存活到最後,若將編號換成2進制,偶數是指尾數為0,奇數則為尾數為1。第一輪將奇數全數槍斃後,剩下人再下一輪的編號即為目前編號除以2(例:2號變1號、4號變2號),而在2進制除以2的意義即為去掉尾數的0。故能夠存活的人在2進制的編號為1000000,即為第64個人
“在2進制除以2的意義即為去掉尾數的0”,这句话令我茅塞顿开!
这个回复就是满分答案啦!!!
除于2相当于想右移一位
站第64位 答对了李老师给我点个赞!
老師,有時間講講先天八卦的推演過程唄!
学太极基础,谢谢
我其實還是聽不太懂😆但卻喜歡聽👍而且要按讚
戴君薇 fuck off
用2进位就好理解,100个数字用二进位表示 0000001 0000010 0000011 0000100……奇数死后,偶数最后去0,能上升为奇数死,也就是说后六位均是0 的死在最后,所以第100000为最后活下来到人。2的6次方为64。
老师教得好
最近一直在看!之前真的不知道数学物理有什么用,看了老师的课,真的后悔不好好学习了。
我想到的答案
1,那個位置是2的幕
2,第一次報數剩50人 第二次25 12 6 3 1 所以第六次玩完就只剩1人了
3,2的6次方 是 64
4,站在第64個位置
:)
不能理解。。
你可以用简单点的方法,倒推一下如果是要活到最后一个人,那么倒数第二轮他是第2个,倒数第三轮他是第4个,依次第8 16 32 ,100以内2最大幂指数是2的6次方,也就是64了
@@luyaomusic 你的方法更快!
虽然快但是逻辑不是很能简洁的表示,只是用了点逆向思维。人数多的话还是用李老师那个老鼠毒药问题的解决方法比较好。逻辑很清晰,虽然看起来可能运算量大,但是对于电脑来说就算是很大的数也是一秒的问题。毕竟计算机就是二进制的机器,编程逻辑上基于这种方法对于只有0和1思考的机器来说更好理解,条理也够清晰。XD
+马路遥 不不,這表示方式已經很簡單了,理解方式也是
這遊戲要生存,就是最後必需是偶數,而最小的偶數是2
然後開始逆推....(略
所以您表達方式已經非常簡單易懂了
如果枪毙的是100个数学家,那估计第一轮就为了第64把交椅打得头破血流了。
反正都是死,不如拼一下
不动情,求大佬解释
然后死的还剩63个 ,继续参加抢交椅~~
所以说归根结底这还是个体力活而不是脑力活?
那么麻烦干嘛?用飞机扔到一个岛上不就完了么?
老師超強
这个毒药问题解的真好
今天我受到了老师的羞辱,我竟然只有幼儿园小朋友的智商。
费劲心机站在了64,然后前面某个囚犯数数数错了XD
哈哈哈哈
现数现毙的怎么会数错 😂
不用报错,第一个囚犯说,我是第0号,后面继续。然后你就完蛋了。
其實掌握制定規則的人,才是決定生死的人
突然, 我觉得李永乐变成风水大师了 哈哈哈哈!!!!
老师用手指这个比喻实在是太形象了!
我上小学的时候,我爸给我出过一道题,说是微软公司面试题,二十年过去了,依然印象深刻!题目是: 1000个苹果,10个箱子,要求不论客户需要多少个苹果,都可以整箱给出!才上小学的我,当时冥思苦想一下午,根据人民币的发行规律得出要想整箱给,至少需要12个箱子,10个箱子无法做到的结论!后来虽然知道正确答案了,但一直无法理解其中深意!直到后来长大了,才明白为啥我爸说这是一道微软公司的面试题!
为何?
@@nikolawang1196 第一個箱子裝2^0個蘋果,第二個2^1個,第三個2^2個……第十個裝2^9個蘋果,2^9+2^8+2^7…+2^0=1023,大於1000,所以一千個蘋果無論需要多少都能用十個箱子送出去
@@nikolawang1196 视频白看了,哈哈
我是计算机专业,大学60分万岁,工作后才又自学,学的许多重要的东西都没学到,又不受玩游戏,工作后玩仙剑98,走迷宫老趟不出来,后来一想,这不是二叉树篇历吗?只往左拐或右拐就走来了。
你这个问题也是工作后才想到的。
@@7000christian 初中玩的这个游戏。。。。哭着放弃了
小朋友已经进化了
谢谢老师
膜拜 感恩分享
老師,什麼時候可以說說變分法
太难 估计没啥人听
@@TchLiyongle 有小朋友问了,就有义务讲一下不是。。
想聽+1
Edmund Lim 学物理的人对变分法更感兴趣
问这种问题的是小朋友还行?
每處決一次就是往右位移一次,總共位移六次,所以位移到第六次會只剩一個人,所以要找前五次位移都是偶數的就是64了
老师,你可以解释珠心算运作的方式吗?
太棒啦谢谢诶
上次我面试 面试官出这道题 刚说到那个毒药的药字
我上去就是一巴掌 “小朋友还没向李老师提问,你tm就敢跟老子透题?!”
???你在秀歌继而
马后炮 逻辑混乱
完全没有马后炮,逻辑也通啊。评论人一直都有关注老师的节目知道老师喜欢解小朋友关于科学,数学和物理上的解释。所以评论人去面试的时候,面试官出了一道题刚好符合你上面科学,数学的特点,评论人知道总有一天会有小朋友提出这个题目,为了不要让面试官提前说出问题的答案所以果断上去给他一巴。可能你会问面试官都还没说完你怎么就知道他要问这道提,不过你仔细看评论人重点提到(毒药字眼)才上去给面试官一巴的。由此可见评论人以前听过这道题目只是没得到答案所以也在期待有一天老师来解释这道题目为了不然面试官破题所以出此下策😂😂
秀,你坐下
@@degao911 蠢到死 你较真的认真样子真像天桥底贴膜的
醒醒吧老師
其實沒有這個小朋友
无中生友
小弟,發現網友和老師一樣勵害!!
李老师,您好,有机会给我们科普一下河图和洛书吗🤣
簡單說每輪第二位都會成為下輪第一位 第四位都會成為下輪第二位
等於每輪編號除以二 除不盡的就死
所以要找的是最後一輪的第一位 倒數第二輪的第二位 倒數第三輪的第四位
直接推出64
100内2^n(n为整数)最大值是2^6=64 所以枪毙6轮后剩余一个人,这个人排64位。
4:19
这是什么呢 这是摇滚(x
Easy way:
The position must be the smallest even no at the final shooting n-th, and the following are the position after n-th to 1st of shooting 2, 4 , 8, 16, 32, 64. It means the position at the first shooting is 64th or 2^6.
100以內2的最大整數次方倍就是答案了~~
算法很多,按李老师这次讲课的思路,0到100写成二进制,还是7个位数表示,第一次死的是第一位是1的,第二次死的是第二位为1的,第三次死的是第三位为一的,以此类推,最后剩下1000000,即2的次方=64
答案是對的 但解釋不太對
謝謝老師
李老师那个课后问题能讲解一下吗?小弟愚钝没能通过使用2进制的方法想明白答案,感谢
李老师翻我牌子吧!
李老师您好,昨天晚上刚看到这个视频
虽然理解了100个瓶子和老鼠这个题怎么解 但是不清楚其中本质是什么 我又想如果100个瓶子两瓶毒药呢,3瓶毒药呢 这样该怎么解。是不是不能按照二进制解了呢?
100个瓶子一瓶毒药和100个瓶子99瓶毒药的答案一定是不同的。也让我想到了与,或,异或这些操作符。
希望老师能继续深入这个问题,讲一下这个问题的通用解法。
ps:我是一名普通程序员,平时几乎用不到二进制操作位,但是很喜欢这种理论。
超過1瓶毒藥,就要計算排列組合了。有2種情形:(1)知道幾瓶毒,(2)不知道幾瓶毒,這要列出所有可能性,計算紙可能要準備個幾十幾百張,來算最少要用幾隻鼠。
我也不会解,说一点想法:以100瓶水2瓶毒药为例,C(2,100)=4950种情况,理论上2^13(即13只老鼠可以表达)
感觉好像是有点道理,但还是希望有大神能够解答一下,帮忙顶上去让李老师看到
14只,李老师的解法中,i号老鼠只吃所有i号位为1的瓶子里的东西。所以如果i号死了,就说明有毒药的瓶子的第i号位为1.
但是现在,如果按同样策略,例如4号位的老鼠死了,就可能有两种情况:有一瓶毒药的4号位是1,另一瓶的4号位是0;或者两瓶毒药的4号位都是1.。这个时候,只要能区别开这两种状况,就可以把问题简化成两个“检测一瓶毒药”或者一个“检测两瓶毒药”但是基数少大约一半的问题(因为只需要找4号位是1的那些数就好了)。
那么我们如果对每号位都用两只老鼠,一只吃0的,一只吃1的,是不是就可以了呢?
如果两只都死了,那么问题转化成两个“检测一瓶毒药的问题”,针对每一个问题,剩余的6只老鼠都构成一个确定解。
如果只有一只死了,那么两瓶药的这一位数就都确定了。剩余的6对--12只老鼠,构成一个自相似的解。那么继续进行下去,每一步都要么简化成两个之前“一瓶药”的问题,要么变成“少一位”的“两瓶药”问题。
运气最差的情况,持续6次,每次都还是一个“两瓶药问题”,那么到最后,就变成了“i位为0或者1,都是毒药”的问题。
所以14只就可以了。
Da Wei 例如
0000000
1111111,
二进制的解法不合适了,
还得99只老鼠
今天知道了“数学学得不好会出人命”
多么深刻的领悟…………
期待那天永乐老师讲点神奇 神学 玄幻的事
哈哈哈哈哈心情不错
如果反过来,偶数毙,奇数活就容易多了,排第一。 :)
開頭一分鐘我開始懷疑我的阿拉伯數字跟永樂大師的阿拉伯數字是不是同一個地方出來的
真的,兩分鐘不到就開始無法理解
你好,李老师。可以讲解下关于易经方面的信息么。谢谢你
超吾 142857神奇数字
李老师的视频费脑细胞!
小于100的最大2^n
脑子好,一下站到了64号,结果第六轮的时候我右面的大哥强行把我拉到了他右边,然后我说出了我的遗言:1~
老师优秀,我上高一的时候,一个数学老师给我们讲过类似的课。
老師太厲害了
这简直是太聪明了