加油站抽奖
2.你有一桶果冻,包括黄色,绿色和红色。闭上眼睛抓两张同色的。你能抓几个来确定你必须有两个相同颜色的果冻?
3.如果你有无限多的水,一个3升的锅铲和一个5升的锅铲,而且两个锅铲的形状上下不均匀,如何准确称量4升水?
一条岔路分别通向诚实的国家和说谎的国家。来了两个人,一个来自诚实的国家,另一个来自说谎的国家。诚实的国家永远说真话,骗子永远说假话。现在你要去说谎的国家,却不知道该走哪条路。你需要问这两个人。我该怎么问?
5.12球和一个天平。现在我们知道只有一个球的重量不同于其他球。我们怎么能在三次之后找到那个球?13呢?(注意这个问题并不能说明球的重量是轻还是重,需要慎重考虑。)
6.在9个点上画10条直线,每条直线至少三个点?
7.在一天的24小时中,一个钟的时针、分针和秒针完全重合的次数是多少?他们是什么时候?你是怎么算出来的?
8.怎么种四棵树,让任意两棵树之间的距离相等?
第二组
1.为什么下水道的盖子是圆的?
2.中国有多少辆汽车?
3.将车钥匙插入车门,向哪个方向转动可以解锁汽车?
4.如果要去掉中国34个省中的任意一个省(包括自治区、直辖市、香港、澳门特别行政区和台湾省省),你会去掉哪一个,为什么?
5.中国有多少加油站能满足所有的汽车?
6.想象你正站在镜子前。请问,为什么镜子里的影像可以倒挂,却不能倒挂?
7.为什么在任何一家酒店,一打开热水,就会瞬间涌出?
8.你怎么跟你奶奶解释Excel的用法?
9.你如何重新设计和设计一台自动取款机?
10.如果你必须重新学习一门新的计算机语言,你打算如何开始?
11.如果你计划在职业生涯的五年内获得回报,那么获得回报的动力是什么?观众是谁?
12.如果微软告诉你,我们要投资500万美元启动你的投资计划,你会启动什么样的商业计划?为什么?
13.如果你能把全世界的电脑制造商聚集在一个办公室,告诉他们,他们将被迫做一件事,那会是什么?
第三组
1.你让工人为你工作7天,报酬是一根金条。这根金条被分成7个相连的部分,每天结束时你必须给他们一根金条。如果只允许你断两次金条,你会怎么给工人发工资?
2.一列火车以15km/h的速度离开北京直奔广州,另一列火车以20km/h的速度离开广州前往北京..如果有一只鸟以30公里的时速与两列火车同时出发,它从北京出发,与另一辆车相遇,然后返回向相反的方向飞去,就这样在两列火车之间依次来回飞行,直到两列火车相遇。请问这只鸟飞了多久?
3.你有四个装有药片的罐子,每个药片都有一定的重量。被污染的药丸是未被污染的药丸的重量+1。只称重一次,如何判断哪罐药被污染?
4.门外三个开关分别对应室内三个灯区,接线良好。当你控制门外的开关时,你看不到室内的光线。现在只允许你进门一次,确定开关和灯的对应关系?
5.为什么人民币只有1,2,5,10的面值?
6.你有两个罐子,50个红色弹珠和50个蓝色弹珠。随机选择一个罐子,随机在罐子里放一个弹珠。你如何给出选择红色弹珠的最佳机会?你的计划中拿到红球的几率有多大?
7.给你两张6面脸。你可以在每个面上刻上从0到9的任意数字,让他们拼出任意年份的日期值。
第四组
第一题。五个海盗抢走了100颗宝石,每颗都一样大,价值连城。他们决定这样划分:
抽签决定你自己的号码(1,2,3,4,5)
先是1号提出分配方案,然后大家投票。当且仅当半数以上的人同意时,按他的计划进行。
分发,不然就扔海里喂鲨鱼。
如果1号死了,2号提出分配方案,然后剩下的4个人投票,当且仅当半数以上相同。
意大利,按照他的计划进行分配,否则就会被扔到海里喂鲨鱼。
其余的可以推断
条件:每个海贼都是非常聪明的人,能够做出理性的判断,做出选择。
问题:第一个海盗提出什么样的分配方案来使他的收入最大化?
问题2。一个关于飞机加油的问题是已知的:
每架飞机只有一个油箱,
飞机可以互相加油(注意是相互的,没有加油机)
一箱油可以让一架飞机绕地球飞行半圈。
问题:
需要出动多少架飞机才能让至少一架飞机绕地球一圈,起飞后返回机场?(所有飞机从同一个机场起飞,必须安全返回机场。不允许中途降落,中间也没有机场。)问题3。汽车加油的问题。
一辆加了500升油的汽车从A地行驶到B地,距离是1000公里。已知该车每公里油耗为1升。A处有无限量的油,但其他任何地方都没有油。但是汽车可以在任何地方储油以备运输。问一下从A到b至少需要多少油。
问题4。摔杯子的问题。
一种杯子,如果在第N层破了,在高于N的任何一层都会破,在m层没破,在低于m的任何一层都会破,这里有两个这样的杯子给你在100层测试,要求找出测试次数最少的刚好会破杯子的楼层。
问题5。推理游戏
教授从2到9中选择两个数字,告诉学生A他们的和,告诉学生B他们的积,并让他们依次猜这两个数字。
a说:“我猜不出来。”
乙说:“我猜不出来。”
a说:“我猜的。”
乙说:“我也猜到了。”
问这两个数字是什么?
问题6。病狗的问题
一个小区有100个家庭,每个家庭养一只狗,每个人每天傍晚都在同一个地方遛狗。据了解,其中一些狗生病了。出于某种原因,狗的主人无法判断自己的狗是否生病,但他们可以判断其他狗是否生病。现在上级发了通知,要求居民处决这些病狗,不允许认定别人的狗是病狗(也就是只能自己判断)。7天后,所有的病狗都被处死。问,* * *到底有几只病狗?为什么?
问题7。U2合唱团必须在17分钟内到达音乐会场地。在路上,它必须经过一座桥。四个人从桥的同一端出发。你必须帮助他们到达另一端。天很黑,他们只有一个手电筒。一次最多两个人过桥,过桥的时候必须拿着手电筒,所以得有人带着手电筒,在桥的两端来回走。手电筒扔了也送不出去。四个人以不同的速度行走。如果两个人一起走,以慢的一个为准。BONO过桥需要1分钟,EDGE过桥需要2分钟,ADAM过桥需要5分钟,LARRY过桥需要10分钟。他们如何在17分钟内过桥?
问题8。监狱有100个房间,每个房间有一个犯人。一天,监狱长说,你的牢房外面有一盏灯。当你在户外时,你可以控制这个灯(关或开)。每天只能一个人出来户外运动,防风随意。如果你们中的一个人能在有限的时间内对我说:“我敢保证,现在每个人都至少放下过一次。”我会让你走的!问问犯人应该采取什么策略才能被典狱长释放。如果采用这种策略,他们能被释放多久?
第五组
1.由于某手机厂商的设计失误,导致电池寿命可能比原设计寿命短一半(不是充放电时间)。解决办法是免费更换电池或者购买50元一张的厂商新手机优惠券。请给所有购买过的用户写信,告诉他们解决方案。
2.某高层领导参观博物馆时,向博物馆馆员小王索要纪念品。根据国家规定,任何人不得将博物馆藏品变成私人财产。博物馆馆长需要怎么给领导写信才能拿回城砖?
3.女售货员因工作失误,误将2万元的笔记本电脑以654.38+0.2万元的价格卖给了李先生。王小姐的经理是怎么给李先生写信想把钱要回来的?
4.给你一个新开发的手机。如果你是测试团队的领导,你会怎么测试?
5.如何为函数int atoi(const char * pstr)写一个测试向量?
第六组
1.链表和数组有什么区别?
2.写一个算法对链表进行排序。解释你为什么选择这种方法。
3.写一个算法实现数组排序。解释你为什么选择这种方法。
4.请写出能直接实现char * strcpy (char * pstrdest,constchar * pstrsource)功能的代码。
5.写一个程序来倒串,需要优化速度和空间。
6.如何在链表中找到循环链接?
7.给出了洗牌的算法,洗好的牌存放在整形数组中。
8.写一个函数检查字符是否是整数,如果是,返回它的整数值。(或者:如何只用4行代码?
9.给出一个函数来输出一个字符串的所有排列。
10.请写出实现void * malloc(int)内存分配函数功能的代码。
11.给一个函数复制两个字符串A和B,字符串A的最后几个字节和字符串B的前几个字节重叠。
12.如何写一个程序把一个有序的整数数组放到二叉树里?
13.如何从顶部一层一层打印二叉树节点数据?请编程。
14.如何把一个链表乱序(即逆序,注意链表的边界条件,考虑空链表)?-
15.请写出能直接实现int atoi(const char * pstr)功能的代码。
第一组问题的答案:
1)三根绳子,第一根点燃两端,第二根点燃一端,第三根不点燃。第一根绳子烧完(30分钟)后,点燃第二根绳子的另一端,第二根绳子烧完(45分钟)后,第三根绳子烧完(1小时65438
2)根据鸽巢原理,4。
3)3升满;3升-> 5升(全注射);3升满;3升-> 5升(剩余1升);倒出5升;3升-> 5升(注入1升);3升满;3升-> 5升;完成(另:可以用回溯编程解决)
4)问其中一个人:另一个人会说哪条路通向一个诚实的国家?回答者所指的路一定是通向说谎的国家。
5)12球:
第一遍:4,4如果是平的,那就把剩下的3个球放在左边,3个好球放在右边,称重:如果左边重,那就称重两个球,哪个是次品,如果是平的,第三个是次品。如果是轻的,也是一样的。如果是平的,那么就是有缺陷的,可以根据需要称轻称重。如果不平,那么可能是定了。右边的四个球叫轻球,剩下的四个球叫好球。取两个重球,左边放两个轻球,右边放三个好球和一个轻球。如果左边重,称两个重球,重的有缺陷。如果是平的,右边的光球有缺陷。如果右边重,称一下左边两个轻的球,轻的有缺陷。如果是平的,剩下两个重球,重的有缺陷,如果是平的,轻的球有缺陷。
13球:
第一次:4,4,如果是平手。剩下的五个球还是可以通过上面的方法找出不良品,但是我们无法知道不良品是重是轻。如果没有,同上。
6)
哦哦哦
哦哦哦
哦哦哦
7)
23次,因为分针要转24次,所以时针可以转1次,分针和时针的间隔明显>:1小时,他们有23次重合机会,秒针在每次重合中有一次重合机会,所以是23次。
重合时间可以通过比较手表或方程式来计算。
8)
在地球表面种树,做一个正四面体,内接地球,里面的联系就是你想要的。
第二组没有标准答案。
第三组
1.分为三段:1,2,4。第一天给1,第二天给1,第三天给1,第四天给1和2,第五天和第六天给1。
2.求火车相遇时间,鸟速乘以时间就是鸟飞的距离。
3.分别从四个罐子里取1,2,3,4粒药丸,称出比正常重多少,就可以判断那个罐子里的药被污染了。
4.三个开关:关,开,开10分钟,然后进屋。暗冷光是开关1控制的灯,亮灯是开关2控制的灯,暗热光是开关3控制的灯。
5.因为1,2,5,10可以组合成任何需要的货币价值,所以日常习惯是10。
6.不明白这个问题的意思...* _ *
7.012345 0126(9)78
第四组都是难题。
第一个问题:97 0 1 2 0或者97 0 1 0 2(提示:可以用逆推的方法得到)。
问题2:3架飞机5架次,如何飞行:
三架ABC飞机同时起飞,1/8,C给AB加满油,C返回1/4,B给A加满油,B返回,A到达1/2,C从机场另一个方向起飞,3/4,C和空油箱的A一样。所以是三架飞机,五个架次。
第三个问题:需要建立数学模型。
(提示,严格证明模型最优比较麻烦,但可以证明,大胆猜测是解决问题的关键。)
题目可以归结为当数列的和Sn = 500/(2n+1)n = 0,1,2,3...大于等于1000,然后n >;六
当n=6时,S6=977.57
所以第一个换乘点到起始位置的距离是1000-977.57=22.43公里。
所以第一次过境前,* * *油耗为22.43*(2*7+1)=336.50升。
之后每次中转的油耗是500升。
所以总油耗是7*500+336.50=3836.50升。
问题4:需要建立数学模型。
问题可以归结为当自然数列s之和大于等于100时,解为n >;13
第一杯可能的投掷楼层分别是:14,27,39,50,60,69,77,84,90,95,99,100。
问题5: 3和4(可以严格证明)
设两个数为n1,n2,n 1 >;=n2,甲方听到的数字是n=n1+n2,乙方听到的数字是m=n1*n2。
证明了n1=3,n2=4是唯一解。
证明:要证明上述命题成立,我们不妨先证明n=7。
1)必要性:
I)n & gt;5很明显,因为n
ii)n & gt;6因为如果n=6,那么虽然A不知道(不确定是2+4还是3+3),B也不可能说不知道是2,4还是3,3(B说不知道m=8还是m=9是没有道理的)。
iii)n & lt;8因为如果n & gt=8,那么N可以分解成n=4+x和n=6+(x-2),那么M可以是4x或6(x-2)而4x=6(x-2)的必要条件是x=6,即n=10,那么N可以分解成8+2,所以一句话,当n =8时,N至少可以分解成两个不同的合数之和,这样当B说他不知道时,A就没有理由说他知道at
以上证明了必要性。
2)充足性
当n=7时,n可以分解成2+5或3+4。
显然,2+5不符合问题的含义。如果省去,很容易判断3+4符合题意,m=12,证完了。
然后得到n=7 m=12 n1=3 n2=4是唯一解。
问题6: 7(用数学归纳法证明)
1)如果只有1条病狗,由于病狗的主人看不到其他病狗,他一定会知道自己的狗是病狗(前提是必须有一条病狗),所以他会在第一天处决病狗。
2)如果有K条病狗,在第K天处死。那么如果有k+1,那么病狗的主人只会看到K条病狗,没有人会在第K天处决病狗。病狗的主人会在k+1日知道自己的狗是病狗,所以病狗会在k+1日被执行死刑。
3)根据1)2),如果有n条病狗,在第n天执行死刑。
问题7:(提示:可以用图论解决)
博诺& ampEDGE通过(2分),波诺把手电筒带回来(1分),亚当&;拉里过关(10分),EDGE带手电筒回来(2分),博诺&;EDGE (2分钟)2+1+10+2+2 = 17分钟。
问题8:
指定一个人做发言人(可以是第一个放风的人)
规则如下:
1.在记者守着的时候开灯,数开灯的次数。
2.当别人第一次接触到新鲜空气时,请关灯。
3.记者第100次开灯时,向典狱长汇报,请求典狱长释放。......
按照概率,大概30年后(10000天)就可以放出来。
第五组没有标准答案。
第六组问题参考答案:
4.
char * strcpy(char * pstrDest,const char * pstrSource)
{
assert((pstrDest!= NULL)& amp;& amp(pstrSource!= NULL));
char * pstr = pstrDest
while((*(pstrdest++)= *(pstrsource++))!='\0');
返回pstr
}
5.
char * strrev(char * pstr)
{
断言(pstr!= NULL);
char * p = pstr
char * pret = pstr
while(*(p++)!='\0');
p-;
char tmp
while(p & gt;pstr)
{
tmp = * p;
*(p-)= *(pstr);
*(pstr++)= tmp;
}
返回pret
//**************************************************************************************
一个大院子里住着50户人家,每家都有一条狗。有一天,他们被告知院子里有一只狗生病了,要求所有主人在发现他们的狗生病的当天杀死狗枪。然而,所有的主人和他们的狗都不能离开他们的房子,他们不能以任何方式相互交流。他们能做的就是通过窗户观察别人家的狗是否生病来判断自己家的狗是否生病。(也就是说,每个主人只能看到其他49只狗是否生病,而单看自己的狗是看不出来的)
第一天,没有枪声。第二天,仍然没有枪声。第三天,传来一阵枪声,问打死了几条狗。
答案分析:
* * *假设1:每个主人都是正常人,也就是他必须假设自己的狗是正常的。如果目前的证据不能证明他的狗有病,他不会杀他的狗。
* * *假设二:每个车主都不是智障。为了协调大家的行动,他们约定今天之前大家只能根据证据来判断。
* * *引理A:基于上述假设,设狗的总数为m,前面的证据表明有>;= n只狗生病,狗主人已知的病狗数量为x,那么当n-x >;= 1,狗的主人可以判断他的狗生病了,然后他会杀了他的狗。
* *如果有N只病狗,那么我们可以把主人分为两类:病狗的主人可以看到N-1只病狗,正常狗的主人可以看到N只病狗。每个人能看到的病狗数量可以在第一天得到。
*第一天:n = 1(至少1条狗生病)。如果N = 1,病狗的主人只能看到0条病狗。根据引理,他会杀死自己的狗。由于第一天没有人杀狗,所以N = 1的假设不成立,即N >;大家都知道至少有两只病狗。
*第二天:根据第一天的判断,所有人都知道N > = 2,所以假设n = 2,病狗的主人只看到x = 1。在同一天,病狗的主人会杀死自己的狗。由于第二天没有人杀狗,所以大家都知道至少有三只病狗。
。。。。。。。。。。。
根据数学归纳法,我们可以得到,当有n只病狗时,直到第n天,病狗的主人才能得到足够的证据来判断自己的狗有病,并杀死自己的狗。
# # # #因为第三天的枪声,我们可以知道三狗生病了(如果n ^ 3。第三天,狗主人无法获得足够的信息来判断他的狗生病了。