1. 有100张牌,小王和小李进行比赛,每个人只能抽1,2,3,4,5张牌,要求小王先抽,谁最后一次抽剩下的牌谁就胜利。小王应该征询什么的策略才能保证他一定会赢?
思路:首先,1+5=2+4=3+3,则可知100=6*16+4,故可以这样考虑,首先小王抽4张牌,接下来小李抽n(1<=n<=5)张牌,则小张抽6-n张牌,就一定保证能赢。如果保证小李赢,小王只需开始抽3张牌,使得100=16*6+3+1,最后一张牌肯定是小李抽到。
2. 有一个骆驼负重1000根香蕉,骆驼每走1米就消耗1根香蕉。假设某地有3000斤香蕉,则骆驼最远能走多少?
思路:骆驼最少能走1000米。可以这么考虑,骆驼先走了x米到达某处,将(1000-2x)香蕉放置该地方,然后再回到出发点,再放置(1000-2x)达到刚刚的地方,最后再回去,再放置,这时无需考虑回城路线,故为(1000-x),使得(1000-2x+1000-2x+1000-x)=1000,则得到x=400。即该骆驼先走400米到达A,然后放下200个香蕉,再回城,放下200个香蕉,再回到A,这时香蕉的个数为600,然后再从A出发,最长为1000+400=1400米。
3. 1000管药水,其中有一管假的。现在有32只小白鼠,假药的致死时间至少3天(可以理解为每只鼠可以喝很多管)问如何辨别出哪管药水是假的? 喂药时间限制不能超过3天。
思路:其实这道题只需要10只小白鼠就可以解决了。将1000管药水按1到1000进行标号,小白鼠按1到10编号,例如:o(15)=0000001111,则将编号为15的药水让老鼠编号为1,2,3,4(从右往左)喝药水。如果3天后1,2,3,4老鼠全部死亡,则编号为15的药水是假的。
4. 有25匹马,速度都不同,但每匹马的速度都是定值。现在只有5条赛道,无法计时,即每赛一场最多只能知道5匹马的相对快慢。问最少赛几场可以找出25匹马中速度最快的前3名?
思路:先将25匹马分别分成5组,进行比赛,则需要赛5场。然后将这5场的每场的冠军再进行赛跑,分别得到1,2,3,4,5名。第一名的马匹所在的组编号为1,第二名编号为2,。。。第五名编号为5。如图所示:
则前三名只会在第一组的前三名,第二组的前二名,第三组的第一名中产生。第一名一定是第一组的第一名,然后将第一组的第二、三名,第二组的前二名,第三组的第一名进行比赛,则这场比赛的第一名是亚军,第二名是季军。共比赛5+1+1=7次。
5. 杀人游戏,假设有2000个人,从1到2000编号,形成一个圆圈,每隔一人杀掉一人,最后剩下的人为编号多少?(约瑟夫环)
思路:这是著名的约瑟夫环问题,具体推导可看《具体数学-计算机科学基础》的第一章,得到的结论为J(n)=J(2^m+l)=2*l+1,即(2000-1014)*2+1=1973编号的人会最后活着。
问题描述:一个教授逻辑学的教授,有三个学生,而且三个学生均非常聪明!一天教授给他们出了一个题, 教授在每个人脑门上贴了一张纸条并告诉他们,每个人的纸条上都写了一个正整数,且某两个数的和等于第三个! (每个人可以看见另两个数,但看不见自己的 )教授问第一个学生: 你能猜出自己的数吗?回答:不能,问第二个,不能,第三个,不能,再问第一个,不能,第二个,不能,第三个:我猜出来了,是 144!教授很满意的笑了。请问您能猜出另外两个人的数吗?
思路: