微软招聘面试试题及参考答案
-85年属什么的生肖
微软招聘面试试题及参考答案
第一组
1.
烧一根不均匀的绳,从头烧到尾
总共需要
1
个小时。现在有若干条材质相同的绳子,
问如何用烧绳的方法来计时一个小时十五分钟呢
?
2.<
/p>
你有一桶果冻,其中有黄色、绿色、红色三种,闭上眼睛抓取同种颜色的两个。抓取
多少个就可以确定你肯定有两个同一颜色的果冻
?
3.<
/p>
如果你有无穷多的水,
一个
3
公升的提捅,
一个
5
公升
的提捅,
两只提捅形状上下都
不均匀,问你如何才能准确称出<
/p>
4
公升的水
?
4.
一个
岔路口分别通向诚实国和说谎国。
来了两个人,
已知一个是诚实
国的,
另一个是
说谎国的。
诚实国永远
说实话,
说谎国永远说谎话。现在你要去说谎国,但不知道应该走哪
条路,需要问这两个人。请问应该怎么问
?
5.12
个球一个天平,现知道只有一个和其它的重量不同,问怎样称才能用三次就找到
那个球。
13
个呢
?(
注意此题并未说明那个球的重量是轻是重,所以需要仔细考虑
)
6.<
/p>
在
9
个点上画
1
0
条直线,要求每条直线上至少有三个点
?
7.<
/p>
在一天的
24
小时之中,
时钟的时针、
分针和秒针完全重合在一起的时候有几次
?
都分
别是什么时间
?
你怎样算出来的
?
8.
怎么样种植
4
棵树木,使其中任意两棵树的距离相等
?
第二组
1.
为什么下水道的盖子是圆的
?
2.
中国有多少辆汽车
?
3.<
/p>
将汽车钥匙插入车门,向哪个方向旋转就可以打开车锁
?
4.<
/p>
如果你要去掉中国的
34
个省
(
含自治区、
直辖市和港澳特区及台湾省
)
中的任何一个,
你会去掉哪一个,为什么
p>
?
5.
多少个加油站才能满足中国的所有汽车
?
6.<
/p>
想象你站在镜子前,请问,为什么镜子中的影象可以颠倒左右,却不能颠倒上下
?
7.
为什么在任何旅馆里,你打开热水,热水都会瞬间倾泻而出
?
8.
你怎样将
Excel
的用
法解释给你的奶奶听
?
9.
你怎样重新改进和设计一个
p>
ATM
银行自动取款机
?
10.
如
果你不得不重新学习一种新的计算机语言,你打算怎样着手来开始
?
11.
如果你的生涯规划中打算在
5
年内受到
奖励,
那获取该项奖励的动机是什么
?
观众是
谁
?
12.
如
果微软告诉你,我们打算投资五百万美元来启动你的投资计划,你将开始什么样
商业计划
?
为什么
?
13.
如
果你能够将全世界的电脑厂商集合在一个办公室里,然后告诉他们将被强迫做一
件事,那
件事将是什么
?
第三组
1.
你让工人为你工作
7
天,
回报是一根金条,
这
个金条平分成相连的
7
段,
你必须在每
天结束的时候给他们一段金条。如果只允许你两次把金条弄断,你如何给你的工人付费<
/p>
?
p>
2.
有一辆火车以每小时
15
公里的速度离开北京直奔广州,同时另一辆火车每小时
20
< br>公里的速度从广州开往北京。
如果有一只鸟,
以
30
公里每小时的速度和两辆火车同时启动,
从
北京出发,
碰到另一辆车后就向相反的方向返回去飞,
就这样依
次在两辆火车之间来回地
飞,直到两辆火车相遇。请问,这只鸟共飞行了多长的距离
p>
?
3.
你有四个装药丸的罐子,
每个药丸都有一
定的重量,
被污染的药丸是没被污染的药丸
的重量
+1
。只称量一次,如何判断哪个罐子的药被污染了
?
4
.
门外三个开关分别对应室内三盏灯,
线路良好,
在门外控制开关时候不能看到室内灯
的情况,现在只允许进门一次,确定开关
和灯的对应关系
?
5.
人民币为什么只有
1
、
2
、
< br>5
、
10
的面值
?
< br>6.
你有两个罐子以及
50
个红
色弹球和
50
个蓝色弹球,随机选出一个罐子,
随机选出
一个弹球放入罐子,怎么给出红色弹球最大
的选中机会
?
在你的计划里,得到红球的几率是
多少
?
7.
给你两颗
6
面色子,
可以在它们各个面上刻上
0-9
任意一个数字,
要求能够用它们拼
出任意一年中的日期数值
第四组
第一题
.
五个海盗抢到了
100
颗宝石,每
一颗都一样大小和价值连城。他们决定这么
分:
抽签决
定自己的号码
(1
、
2
、
3
、
4
、
5)
首先,
由
1
号提出分配方案,然后大家表决,
当且仅当超过半数的人同意时
,
按照他的
方案
进行分配,否则将被扔进大海喂鲨鱼
如果
1<
/p>
号死后,
再由
2
号提出分配方案,
然后剩下的
4
人进行
表决,
当且仅当超过半数
的人同
意时,按照他的方案进行分配,否则将被扔入大海喂鲨鱼
依此类推
条件:每个海盗都是很聪明的人,都能很理智地做出判断,从
而做出选择。
问题:第一个海盗提出怎样的分配方案才能使自己的收益最大
化
?
第二题
.
一道关于飞机加油的问题,已知:
每个飞机只有一个油箱,
飞机之间可以相互加油
(
注意是相互,没有加油机
)
一箱油可供一架飞机绕地球飞半圈,
问题:
为使至
少一架飞机绕地球一圈回到起飞时的飞机场,
至少需要出动几架飞机
?(
所有飞机
从同一机场起飞,而且必须安全返回机场,不
允许中途降落,中间没有飞机场
)
第三题
.
汽
车加油问题
一辆载
油
500
升的汽车从
A
开往
1000
公里外的
B
p>
,已知汽车每公里耗油量为
1
升,
A
处有无穷多的油,其他任何地点都没有油,但该车可以在任何地点存放
油以备中转,问从
A
到
B
最少需要多少油
第四题
.
掷杯问题
一种杯子,
若在第
< br>N
层被摔破,
则在任何比
N
p>
高的楼层均会破,若在第
M
层不破,
则在
任何比
M
低的楼
层均会破,
给你两个这样的杯子,
让你在
100
层高的楼层中测试,
要求用最
少的测试次数找出恰巧会使杯子破碎的楼层。
第五题
.
推理游戏
教授选出两个从
2
< br>到
9
的数,
把它们的和告诉学生
甲,
把它们的积告诉学生乙,
让他们
轮
流猜这两个数
甲说:
“我猜不出”
乙说:
“我猜不出”
甲说:
“我猜到了”
乙说:
“我也猜到了”
问这两个数是多少
第六题
.
病狗问题
一个住宅区内有
100
户人家,每户人家养一条狗,每天傍晚大家都在同一个地方遛狗。
已知这些狗
中有一部分病狗,
由于某种原因,
狗的主人无法判断自己的狗是
否是病狗,
却能
够分辨其他的狗是否有病,现在,上级传来通知
,要求住户处决这些病狗,并且不允许指认
他人的狗是病狗
(<
/p>
就是只能判断自己的
)
,过了
7
天之后,所有的病狗都被处决了,问,一共
有几
只病狗
?
为什么
?
第七题
.
U2
合唱团在
17
分钟内得赶到演唱会场,途中必需跨过一座桥,
四个人从桥的
同一端出发,你得帮助他们到达另一端,
天色很暗
,而他们只有一只手电筒。一次同时最多
可以有两人一起过桥,
而过桥的时候必须持有手电筒,
所以就得有人把手电筒带来带去,
来
回桥两端。
手电筒是不能用丢的方式来传递的。
四个人的步行速度各不同,
若两人同行则以
较慢者
的速度为准。
BONO
需花
1
分钟过桥
,EDGE
需花
2
分钟过桥
,ADAM
需花
5
分钟过桥
,LARRY
需花
10
分钟过桥
,
他们要如何在
17
分钟内过桥呢
?
第八题
.
监狱里有
< br>100
个房间,
每个房间内有一囚犯。
< br>一天,监狱长说,你们狱房外有
一电灯,
你们在放风时可
以控制这个电灯
(
熄或亮
)
。
每天只能有一个人出来放风,
并且防风
是随机的。如果在有限时间内,你们中的某人能对我说:
“我敢保证,现
在每个人都已经至
少放过一次风了。
”我就放了你们
!
问囚犯们要采取什么策略才能被监狱长放掉
?<
/p>
如果采用了
这种策略,大致多久他们可以被释放
< br>?
第五组
1.
某手
机厂家由于设计失误,有可能造成电池寿命比原来设计的寿命短一半
(
< br>不是冲放
电时间
)
,
解决方案就是免费更换电池或给
50
元购买该厂家
新手机的折换券。
请给所有已购
买的用户写信告诉解决方案。<
/p>
2.
一高层领导在参观某博物馆时,
向博物馆
馆员小王要了一块明代的城砖作为纪念,
按
国家规定,
任何人不得将博物馆收藏品变为私有。
博物馆馆长需要如何写信给这位领
导,
将
城砖取回。
3.<
/p>
营业员小姐由于工作失误,
将
2
万元的笔记本电脑以
1.2
万元错卖给李先生,
王小姐
的经理怎么写信给李先生试图将钱要回来
?
< br>4.
给你一款新研制的手机,如果你是测试组的组长,你会如何测试
?
5.
如何为函数
int
atoi(const char *
pstr)
编写测试向量
?
第六组
1.
链表和数组的区别在哪里
?
2.<
/p>
编写实现链表排序的一种算法。说明为什么你会选择用这样的方法
?
3
.
编写实现数组排序的一种算法。说明为什么你会选择用这样的方法
?
4.
请编写能直接实现
char *
strcpy(char * pstrDest,const char * pstrSource)
函
数功能的代码。
5.
编写
反转字符串的程序,要求优化速度、优化空间。
6.
在链表里如何发现循环链接
?
7.<
/p>
给出洗牌的一个算法,并将洗好的牌存储在一个整形数组里。
8.<
/p>
写一个函数,检查字符是否是整数,如果是,返回其整数值。
(<
/p>
或者:怎样只用
4
行
代码
9.
给出一个函数来输出一个字符串
的所有排列。
10.
请编写实现
void *
malloc(int)
内存分配函数功能一样的代码。
11.
给出一个函数来复制两个字符串
A
和<
/p>
B
。字符串
A
的
后几个字节和字符串
B
的前几
个字节重
叠。
12.
怎样编写一个程序,把一个有序整数数组放到二叉树中<
/p>
?
p>
13.
怎样从顶部开始逐层打印二叉树结点数据
?
请编程。
14.
怎
样把一个链表掉个顺序
(
也就是反序,注意链表的边界条件并考
虑空链表
)? --
15.
请编写能直接实现
int
atoi(const char *
pstr)
函数功能的代码
==========================================
=====================================
==
=====
第一组题答案:
1)<
/p>
三根绳,第一根点燃两端,第二根点燃一端,第三根不点
第一根
绳烧完
(30
分钟
)
< br>后,点燃第二根绳的另一端,第二根绳烧完
(45
分钟<
/p>
)
后,点燃
第三根绳子两端,第三根绳烧
完
(1
小时
15
分
)
后,计时完成
2)<
/p>
根据抽屉原理,
4
个
3)3
升装满
;3
升
< br>-
〉
5
升
(
全注入
);3
升装满
;3
升
-
〉
5
升
(
剩
1
升
);5
升倒掉
;3
升
-
〉
< br>5
升
(
注入
1
升
);3
升装满
;3
升
-
〉
< br>5
升
;
完成
(
另:可用回溯法编程求解
)
4)
问其
中一人:另外一个人会说哪一条路是通往诚实国的
?
回答者所指
的那条路必然是
通往说谎国的。
5)12
个球:
第一次
:
4
,
4
如果平了:
那么剩下的球中取
3
放左边
,
取
3
个好球放右边,称:
如果左边重,那么取两个球称一下
,哪个重哪个是次品,平的话第三个重,是次品,轻
的话同理
如果平
了,那么剩下一个次品,还可根据需要称出次品比正品轻或者重
如果不平:
那么不妨设左边重右边轻,为了便
于说明,将左边
4
颗称为重球,右边
4
颗称为轻球,
剩下
4
< br>颗称为好球
取重球
2
颗
,轻球
2
颗放在左侧,右侧放
3
颗好球和一颗轻球
如果左边重
称那两颗重球,重的一个次品,平的话右边轻球次品
如果右边重
称左边两颗轻球,轻的一个次品
如果平