【知识点】第一组绳的方法来计时一个小时

1)若只有1只病狗,因为病狗主人看不到有其他病狗,必然会知道自己的狗是病狗(前提是一定存在病狗),所以他会在第一天把病狗处决。2)设有k只病狗的话,会在第k天被处决,那么,如果有k+1只,病狗的主人只会看到k只病狗,而第k天没有人处决病狗,病狗主人就会在第k+1天知道自己的狗是病狗,于是病狗在第k+1天被处决3)由1)2)得,若有n只病狗,必然在第n天被处决

第一组

1.燃烧不平整的绳索从开始到结束总共需要 1 小时。现在有好几根相同材质的绳子,如何用烧绳子的方法来计时一小时十五分钟?

2.你有一桶果冻,黄色、绿色和红色,闭上眼睛抓两个相同颜色的。抓几个才能确保你有两个相同颜色的果冻?

3.如果你有无限量的水,一个3升的升降器,一个5升的升降器,而且两个升降器的上下形状不均匀,如何准确称重4升的升降器水?

4.道路上的岔路口通向真理之地和谎言之地。来了两个人,知道一个来自诚实之国,另一个来自谎言之国。诚实的国家总是说真话,谎言的国家总是说谎。现在你要去谎言之国,却不知道该走哪条路,需要问问这两个人。我应该问什么?

5.一个秤有12个球。现在我知道只有其中一个的重量与其他的不同。我怎么能在三遍中找到球。 13号呢? (注意这个问题并没有具体说明球的重量是轻还是重,所以需要慎重考虑)

6.在 9 个点上画 10 条直线,每条线上至少需要 3 个点?

7.在一天的 24 小时中,时钟的时针、分针和秒针有多少次完全重叠?现在几点了?你是怎么计算的?

8.如何种4棵树,让任意两棵树等距?

答案:

1)三根绳子,第一根引燃两端,第二根引燃一端,第三根不引燃

第一根绳子燃烧后(30分钟),点燃第二根绳子的另一端,第二根绳子燃烧后(45分钟),点燃第三根绳子的末端,第三根绳子燃烧(1小时15分钟)分钟),计时完成

2)按照抽屉原理,4个

3)满 3 升; 3 升 -> 5 升(全喷射); 3升装满; 3 升 -> 5 升(剩余 1 升); 5 升排干; 3 升 -> 5 升(注入 1 升); 3升装满; 3 升 -> 5 升;完成(另一种:可以通过回溯编程解决)

4)问其中一个人:另一个人会说哪条路通向真理之国?答案所指向的答案,必定是通往谎言之国的道路。

5)12个球:

第一次:4, 4 如果并列:

然后取剩下的3个球放在左边,再取3个好的球放在右边,说:

如果左边较重,则取两个球称重,一个重,一个次等。

如果是平的,那么就剩下一个次品了,次品可以根据需要比正品轻或重

如果不相等:

那么左边重,右边轻。为了便于说明,左4个球称为重球,右4个球称为轻球,其余4个球称为好球

左侧取2个重球,2个轻球,右侧取3个好球和1个轻球

如果左边很重

称两个重球,重的有缺陷,如果是平的,右边的轻球有缺陷

如果右侧很重

称量左边的两个灯球,灯一个有缺陷

如果平坦

把剩下的两个重球称重,重的有缺陷,如果平了,剩下的轻的球有缺陷

13 球:

第一次:4、4,如果并列

用剩下的5个球,上面的方法还是能找到次品,但是无法知道次品是重还是轻

如果不相等,同上

6) o o o

o o o

o o o

7)

23次,因为分针需要转动24次,时针才能转动1次,而分针和时针重叠两次的间隔明显>1小时,所以它们有23次重叠的机会,而秒针在每个重叠的机会中都有一个重叠,所以是 23 次

重合时间可以通过手表计算,也可以通过公式计算

8)

在地球表面种一棵树,做一个正四面体刻在土里,刻的点就是想要的

第二组:

1.下水道盖为什么是圆形的?

2.中国有多少辆汽车?

3.把车钥匙插进车门,朝哪个方向转动才能开锁?

4.如果你要删除中国34个省(包括自治区、直辖市、港澳台省)中的任何一个,你会删除哪个,为什么?

5.中国有多少个加油站可以满足所有的汽车?

6.想象你站在一面镜子前,请问为什么镜子里的图像可以左右颠倒,而不能上下颠倒?

微软 笔试题 编程题_微软面试题 病狗_微软面试编程题

7.为什么在任何酒店,一打开热水,热水就会瞬间倒出来?

8.你会如何向你奶奶解释 Excel?

9.您将如何重新改进和重新设计 ATM 银行 ATM?

10.如果你必须学习一门新的计算机语言,你会如何开始?

11.如果您计划在职业规划的5年内获得奖项,获得该奖项的动机是什么?观众是谁?

12.如果微软告诉你我们将投资 500 万美元来启动你的投资计划,你会从什么商业计划开始?为什么?

13.如果你可以将来自世界各地的计算机制造商聚集在一个办公室,并告诉他们他们将被迫做一件事,那会是什么?

第二组没有标准答案

第三组

1.你让工人为你工作7天,奖励是一根金条,分成7个相连的段,你必须在每段结束时给他们一段金条天。如果只允许您打断金条两次,您如何支付工人工资?

2.一列火车从北京开往广州,时速15公里,另一列火车从广州开往北京,时速20公里。假如有一只鸟,两列火车同时发车,时速30公里,从北京出发,遇到另一辆车,然后返回反方向飞,在两者之间来回穿梭依次火车。飞行直到两列火车相遇。请问,这只鸟飞了多久?

3.你有四罐药丸,每一罐药丸都有一定的重量,受污染的药丸是未受污染的药丸的重量+1。只称重一次,我怎么知道哪个罐子被污染了?

4.门外的三个开关分别对应房间内的三个灯。接线好,门外控制开关时看不到室内灯。现在只允许一个条目来确定开关和灯的对应关系?

5.为什么人民币只有1、2、5、10的面值?

6.你有两个罐子和50个红色弹子和50个蓝色弹子,随机选择一个罐子,随机选择一个弹子放入罐子里,怎么给最多红色弹子得到一个的几率是多少你的计划中有红球吗?

7.给你两个 6 面骰子,你可以在它们的每一面刻任意数字 0-9,并且你需要能够用它们拼出任何年份的日期值

第三组答案:

1.分为1、2、4段,第一天给1,第二天给1,第三天给1,第四天给41、2,第 5 天送 1,第 6 天退 1,第 7 天送 1

2.求火车相遇的时间,鸟的速度乘以时间就是鸟飞的距离

3.从四个罐子中各取1、2、3、4颗药丸,称罐子的重量,确定罐子被污染了。

4.三个开关分别是:关、开、开10分钟,然后进入房间,开关1控制的灯是暗冷光,开关2控制的灯是亮,暗光和热光是由开关3控制的灯光

5.因为1、2、5、10可以组合成任意想要的币值,所以日常习惯是小数

6. 没看懂题意……*_*

7. 012345 0126(9)78

第四组:

问题 1. 五名海盗抢走了 100 颗宝石,每颗的大小和价值都相同。他们决定这样划分:

抽签确定你的号码(1、2、3、4、5)

首先,1号提出分配方案,然后每个人投票,当且仅当超过一半的人同意时,按照他的方案进行

分发或扔进海里喂鲨鱼

如果1号死了,2号会提出分配方案,然后剩下的4人投票,当且仅当超过半数同意

按照他的计划,你想要的时候分配,否则会被扔到海里喂鲨鱼

等等

条件:每个海盗都是一个非常聪明的人,可以做出理性的判断和选择。

问题:第一个海盗提出了什么样的分配方案来最大化他的利润?

问题2.关于飞机加油的问题,已知:

每架飞机只有一个油箱,

飞机可以互相加油(注意是相互的,不是加油机)

一箱油足以让一架飞机绕地球半圈,

问题:

为了至少有一架飞机环绕地球并返回它起飞的机场,至少需要多少架飞机? (所有飞机从同一个机场起飞,必须安全返回机场,不允许中途降落,场间没有飞机)

问题3.参与汽车加油的讨论

一辆载有 500 升燃油的汽车从 1000 公里外的 A 地行驶到 B 地。众所周知,汽车每公里消耗 1 升燃油。 A 处有无限量的油,其他任何地方都没有油。汽车可以在任何地点储存油以供运输,询问从A到B最少需要多少油

问题 4. 抛杯子

一种杯子,如果在第N层破了,在高于N的任何楼层都会被打破,如果在第M层没有被打破,在低于M的任何楼层都会被打破,给你两个其中一个杯子可以让你在 100 层楼高的地板上进行测试,只需最少的测试次数就能找到碰巧打破杯子的地板。

问题 5. 推理游戏

教授从 2 到 9 中选择两个数字,告诉 A 学生他们的和,告诉学生 B 他们的乘积,并让他们轮流猜这两个数字

A 说:“我猜不出来”

B说:“我猜不出来”

A 说:“我猜到了”

B说:“我也猜到了”

这两个数字是多少

问题 6. 病狗问题

一个小区有100户人家,每户养一只狗,每个人每天晚上都在同一个地方遛狗。众所周知,其中一些狗是病狗。由于某种原因,狗的主人无法判断他的狗是否是病狗,但他可以区分其他狗是否生病。现在,上级已经发出通知,要求居民处决这些病犬。狗,并且不允许将别人的狗认定为病狗(即只能判断自己)。 7天后,所有生病的狗都被处决。请问,一共有多少只病犬?为什么?

问题 7。U2 合唱团必须在 17 分钟内到达音乐会场地。在路上,他们必须过一座桥。四个人从桥的同一端开始。你必须帮助他们到达另一端。天很黑,他们只有一个手电筒。最多两个人可以同时过桥,过桥时必须带手电筒,所以要有人带手电筒在桥的两端之间来回走动。手电筒不能通过扔掉来传递。四个人的行走速度不一样。如果两个人一起走,慢的那个会占上风。 BONO过桥1分钟,EDGE过桥2分钟,ADAM过桥5分钟,LARRY过桥10分钟,他们怎么能17分钟过桥?

问题8.监狱有100个房间,每个房间都有一个囚犯。有一天,监狱长说你的牢房外面有一盏电灯,你可以在有风的时候控制这个灯(关或开)。每天只能一个人出来放风,而且防风是随机的。如果在有限的时间内,你们中的一个人可以对我说:“我保证,现在每个人都至少被放过一次。”我让你走!询问囚犯他们必须使用什么策略才能获得长期释放?如果采用这种策略,大概能放多久?

第四组答案:

第一个问题:97 0 1 2 0 or 97 0 1 0 2(提示:可以用逆法求解)

问题2:3架飞机5架次微软面试题 病狗,飞行方式:

3个ABC同时起飞,1/8,C填AB,C返回,1/4,B填A,B返回,A到达1/2,C从机场到起飞在另一个方向,在 3/4 处,C 与油箱已经空的 A 共享剩余的燃油量。同时B从机场起飞,AC同时去7/8与B分担剩余油量。同时返航的只有3架飞机。所以是 3 架飞机和 5 架次。

第三题:需要建立数学模型参与讨论

(提示,严格证明模型最优比较麻烦,但确实可以证明,大胆猜想是解决问题的关键)

问题可以归结为求序列的和 an=500/(2n+1) n=0,1,2,3……当和 Sn 为大于等于1000,解为n>6

当n=6时,S6=977.57

所以第一个中转点到起始位置的距离是1000-977.57=22.43km

所以第一次换车前总油耗为22.43*(2*7+1)=336.50升

之后每次换乘的油耗为 500 升

所以总油耗为7*500+336.50=3836.50升

第四个问题:需要建立数学模型

问题可以概括为:当自然数序列的和S大于等于100时,解为n>13

第一杯可能的投掷层数为:14、27、39、50、60、69、77、84、90、95、99、100

问题 5:3 和 4(可严格证明)

假设这两个数字是n1,n2,n1>=n2,A听到的数字是n=n1+n2,B听到的数字是m=n1*n2

证明n1=3,n2=4是唯一解

证明:为了证明上述命题为真,我们先证明n=7

1)必要性:

i) n>5 是显而易见的,因为 n

ii) n>6 因为如果 n=6,那么 A 不知道(不确定是 2+4 还是 3+3) 但无论是 2、4 还是 3、3,B 都可以’ t 说不我知道(如果 m=8 或 m=9,B 说我不知道​​是不合理的)

iii) 如果n=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没有理由马上说他知道。

以上证明了必要性

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)如果只有一只病狗,因为病狗的主人看不到其他病狗,他肯定会知道他的狗是病狗(前提是必须有病狗) ,所以他会在一天之内把病狗处死。

2)如果有k只生病的狗,它们将在第k天被处决。那么,如果有k+1条狗,病狗的主人只会看到k条病狗,而在第k天没有人处决病狗,病狗的主人就会知道他的狗是病狗第k+1天,所以病狗会在第k+1天被处死

3)被1)2)收购,如果有n条病犬,必须在第n天处死

问题7:(提示:可以用图论方法解决)

BONO&EDGE(2分),BONO带回手电(1分),ADAM&LARRY(10分),EDGE带回手电(2分),BONO&EDGE(2分)2+1+10+2 +2= 17 分钟

问题 8:

同意一个人做记者(可以是第一个放风的人)

规则如下:

1、记者开灯数一数他们放风时开灯的次数

2、别人第一次遇到开灯的灯,把灯关掉

3、记者第100次开灯时,向典狱长报告微软面试题 病狗,要求典狱长放人……

大概30年后(10000天)就可以放出来

微软面试编程题_微软 笔试题 编程题_微软面试题 病狗

第 5 组:

1.手机厂商可能会因为设计错误(不是充放电时间)导致电池寿命比原设计寿命缩短一半。解决办法是免费更换电池或花50元从厂家购买一部新手机。优惠券。请写信给所有购买用户告知解决方法。

2.一位高层领导参观博物馆时,向博物馆馆员小王要了一块明代城砖作为纪念品。根据国家规定,任何人不得将博物馆藏品私有化。博物馆馆长需要如何写信给领导才能拿回城市砖块。

3.销售小姐因工作失误以1.2万元将一台2万元的笔记本电脑卖给了李先生。王小姐的经理是怎么写信给李先生要钱的?回来了吗?

4.我给你一个新开发的手机。如果你是测试组的组长,你会怎么测试?

5.如何为函数 int atoi(const char *pstr) 编写测试向量?

第五组无标准答案

第六组:

1.链表和数组有什么区别?

2.写一个排序链表的算法。请解释您为什么选择使用这种方法?

3.编写一个排序数组的算法。请解释您为什么选择使用这种方法?

4.请写出可以直接实现char * strcpy(char * pstrDest,const char * 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)功能的代码

第六套部分问题参考答案:

4.

char *strcpy(char *pstrDest,const char *pstrSource)

{

断言((pstrDest!=NULL)&&(pstrSource!=NULL));

char * pstr=pstrDest;

while((*(pstrDest++)=*(pstrSource++))!=”);

返回 pstr;

}

5.

char * strrev(char * pstr)

{

断言(pstr!=NULL);

char * p=pstr;

char *pret=pstr;

while(*(p++)!=”);

p–;

char tmp;

while(p>pstr)

{

tmp=*p;

*(p–)=*(pstr);

*(pstr++)=tmp;

}

返回pret;

转载于:

主题测试文章,只做测试使用。发布者:@hedu,转转请注明出处:https://www.hedu.net/xgyl/2022/05/16/6000.html

(0)
上一篇 2022年5月16日 下午12:01
下一篇 2022年5月16日 下午12:01

相关推荐