`
阅读更多
网上有不少Microsoft的测试题,引来不少的眼光。在这里把所有的测试题加以整理,再附上答案。(个别题目答案有多种,文本仅代表作者的思路)每道题的后面会给出一个时间。这个时间是作者做出该题所用的时间。(注意,这不是什么标准时间,相信所有浏览本试卷的朋友都会在某一道或多道题上找到灵感,迅速解题的)

一.最基本题型(说明:此类题型比较简单)
1.烧一根不均匀的绳,从头烧到尾总共需要1个小时。现在有若干条材质相同的绳子,问如何用烧绳的方法来计时一个小时十五分钟呢?(这道题有点BT)
2.你有一桶果冻,其中有黄色、绿色、红色三种,闭上眼睛抓取同种颜色的两个。抓取多少个就可以确定你肯定有两个同一颜色的果冻?(5秒-1分钟,呵呵,看了答案才知道很简单)
3.如果你有无穷多的水,一个3公升的提捅,一个5公升的提捅,两只提捅形状上下都不均匀,问你如何才能准确称出4公升的水?(40秒-3分钟)
4.一个岔路口分别通向诚实国和说谎国。来了两个人,已知一个是诚实国的,另一个是说谎国的。诚实国永远说实话,说谎国永远说谎话。现在你要去说谎国,但不知道应该走哪条路,需要问这两个人。请问应该怎么问?(20秒-2分钟)
5.12个球一个天平,现知道只有一个和其它的重量不同,问怎样称才能用三次就找到那个球。13个呢?(注意此题并未说明那个球的重量是轻是重,所以需要仔细考虑)(5分钟-1小时)
6.在9个点上画10条直线,要求每条直线上至少有三个点?(3分钟-20分钟)
7.在一天的24小时之中,时钟的时针、分针和秒针完全重合在一起的时候有几次?都分别是什么时间?你怎样算出来的?(5分钟-15分钟)

二.没有答案型(说明:这些题显然不是考你智力。而考的是你的反应能力。这种题大多数没有答案,但是要看你的反应喽!)
1.为什么下水道的盖子是圆的?
2.中国有多少辆汽车?
3.将汽车钥匙插入车门,向哪个方向旋转就可以打开车锁?
4.如果你要去掉中国的34个省(含自治区、直辖市和港澳特区及台湾省)中的任何一个,你会去掉哪一个,为什么?
5.多少个加油站才能满足中国的所有汽车?
6.想象你站在镜子前,请问,为什么镜子中的影象可以颠倒左右,却不能颠倒上下?
7.为什么在任何旅馆里,你打开热水,热水都会瞬间倾泻而出?
8.你怎样将Excel的用法解释给你的奶奶听?
9.你怎样重新改进和设计一个ATM银行自动取款机?
10.如果你不得不重新学习一种新的计算机语言,你打算怎样着手来开始?
11.如果你的生涯规划中打算在5年内受到奖励,那获取该项奖励的动机是什么?观众是谁?
12.如果微软告诉你,我们打算投资五百万美元来启动你的投资计划,你将开始什么样商业计划?为什么?
13.如果你能够将全世界的电脑厂商集合在一个办公室里,然后告诉他们将被强迫做一件事,那件事将是什么?

三.难题(说明:这类题有一定难度,如果得不到答案,也不能说明什么。如果你想到了解题思路,那么答案马上就能出来。如果想不到思路,那么……就别想解出来了。)
1.你让工人为你工作7天,回报是一根金条,这个金条平分成相连的7段,你必须在每天结束的时候给他们一段金条。如果只允许你两次把金条弄断,你如何给你的工人付费?
2.有一辆火车以每小时15公里的速度离开北京直奔广州,同时另一辆火车每小时20公里的速度从广州开往北京。如果有一只鸟,以30公里每小时的速度和两辆火车同时启动,从北京出发,碰到另一辆车后就向相反的方向返回去飞,就这样依次在两辆火车之间来回地飞,直到两辆火车相遇。请问,这只鸟共飞行了多长的距离?
3.你有四个装药丸的罐子,每个药丸都有一定的重量,被污染的药丸是没被污染的药丸的重量+1。只称量一次,如何判断哪个罐子的药被污染了?
4.门外三个开关分别对应室内三盏灯,线路良好,在门外控制开关时候不能看到室内灯的情况,现在只允许进门一次,确定开关和灯的对应关系?
5.人民币为什么只有1、2、5、10的面值?
6.你有两个罐子以及50个红色弹球和50个蓝色弹球,随机选出一个罐子, 随机选出一个弹球放入罐子,怎么给出红色弹球最大的选中机会?在你的计划里,得到红球的几率是多少?

四.超难题(说明:如果你是第一次看到这种题,并且以前从来没有见过类似的题型,并且能够在半个小时之内做出答案。只能说明你的智力超常……)

第一题 . 五个海盗抢到了100颗宝石,每一颗都一样大小和价值连城。他们决定这么分:
抽签决定自己的号码(1、2、3、4、5)
首先,由1号提出分配方案,然后大家表决,当且仅当超过半数的人同意时,按照他的方案进行分配,否则将被扔进大海喂鲨鱼
如果1号死后,再由2号提出分配方案,然后剩下的4人进行表决,当且仅当超过半数的人同意时,按照他的方案进行分配,否则将被扔入大海喂鲨鱼
依此类推
条件:每个海盗都是很聪明的人,都能很理智地做出判断,从而做出选择。
问题:第一个海盗提出怎样的分配方案才能使自己的收益最大化?

第二题 . 一道关于飞机加油的问题,已知:
每个飞机只有一个油箱,
飞机之间可以相互加油(注意是相互,没有加油机)
一箱油可供一架飞机绕地球飞半圈,
问题:
为使至少一架飞机绕地球一圈回到起飞时的飞机场,至少需要出动几架飞机?(所有飞机从同一机场起飞,而且必须安全返回机场,不允许中途降落,中间没有飞机场)

五.主观题(说明:在以后的工作过程中,我们可定会犯这样那样的错误。既然错误已经酿成,损失在所难免,我们只能想办法把损失减少到最小。如果能巧妙地回答出这些问题,再发生错误的情况下。能让客户有最少的抱怨,公司有最少的损失。)
1.某手机厂家由于设计失误,有可能造成电池寿命比原来设计的寿命短一半(不是冲放电时间),解决方案就是免费更换电池或给50元购买该厂家新手机的折换券。请给所有已购买的用户写信告诉解决方案。
2.一高层领导在参观某博物馆时,向博物馆馆员小王要了一块明代的城砖作为纪念,按国家规定,任何人不得将博物馆收藏品变为私有。博物馆馆长需要如何写信给这位领导,将城砖取回。
3.营业员小姐由于工作失误,将2万元的笔记本电脑以1.2万元错卖给李先生,王小姐的经理怎么写信给李先生试图将钱要回来? (这道题超级BT,Fly.C4推荐您必看!)

六.算法题(说明:这些题就不是什么花样了,考的是你的基础知识怎么样。再聪明而没有实学的人都将会被这些题所淘汰。)
1.链表和数组的区别在哪里?
2.编写实现链表排序的一种算法。说明为什么你会选择用这样的方法?
3.编写实现数组排序的一种算法。说明为什么你会选择用这样的方法?
4.请编写能直接实现strstr()函数功能的代码。
5.编写反转字符串的程序,要求优化速度、优化空间。
6.在链表里如何发现循环链接?
7.给出洗牌的一个算法,并将洗好的牌存储在一个整形数组里。
8.写一个函数,检查字符是否是整数,如果是,返回其整数值。(或者:怎样只用4行代码编写出一个从字符串到长整形的函数?)
9.给出一个函数来输出一个字符串的所有排列。
10.请编写实现malloc()内存分配函数功能一样的代码。
11.给出一个函数来复制两个字符串A和B。字符串A的后几个字节和字符串B的前几个字节重叠。
12.怎样编写一个程序,把一个有序整数数组放到二叉树中?
13.怎样从顶部开始逐层打印二叉树结点数据?请编程。
14.怎样把一个链表掉个顺序(也就是反序,注意链表的边界条件并考虑空链表)?


[解答与提示]

一.最基本题型
1.一要一头烧,一根从两头烧,再有一根做参照,两头烧完的记下位置(即烧到这里要半小时),把参照的那根从标记位置处剪开,取其中一段A。
一头烧的那根烧完后(就是一个小时后),把A从两头开始烧,烧完后即为十五分钟,加起来共一小时十五分钟。
2.4个。
3.大桶装满水,倒入小桶,大桶剩下2公升水。小桶水倒掉,大桶剩2公升水倒入小桶中,大桶再装满后,倒入小桶至小桶满,大桶即剩4公升
4.如果参加过类似于奥林匹克数学班的,都应做过这些题。问他你的国家怎么走,他肯定指向的是诚实国。
5.12个时可以找出那个是重还是轻,13个时只能找出是哪个球,轻重不知。
把球编为①②③④⑤⑥⑦⑧⑨⑩⑾⑿。(13个时编号为⒀)
第一次称:先把①②③④与⑤⑥⑦⑧放天平两边,
  ㈠如相等,说明特别球在剩下4个球中。
    把①⑨与⑩⑾作第二次称量,
    ⒈如相等,说明⑿特别,把①与⑿作第三次称量即可判断是⑿是重还是轻
    ⒉如①⑨<⑩⑾说明要么是⑩⑾中有一个重的,要么⑨是轻的。
      把⑩与⑾作第三次称量,如相等说明⑨轻,不等可找出谁是重球。
    ⒊如①⑨>⑩⑾说明要么是⑩⑾中有一个轻的,要么⑨是重的。
      把⑩与⑾作第三次称量,如相等说明⑨重,不等可找出谁是轻球。
  ㈡如左边<右边,说明左边有轻的或右边有重的
    把①②⑤与③④⑥做第二次称量
    ⒈如相等,说明⑦⑧中有一个重,把①与⑦作第三次称量即可判断是⑦与⑧中谁是重球
    ⒉如①②⑤<③④⑥说明要么是①②中有一个轻的,要么⑥是重的。
      把①与②作第三次称量,如相等说明⑥重,不等可找出谁是轻球。
    ⒊如①②⑤>③④⑥说明要么是⑤是轻的,要么③④中有一个是重的。
      把③与④作第三次称量,如相等说明⑤轻,不等可找出谁是重球。
  ㈢如左边>右边,参照㈡相反进行。
当13个球时,第㈠步以后如下进行。
  把①⑨与⑩⑾作第二次称量,
  ⒈如相等,说明⑿⒀特别,把①与⑿作第三次称量即可判断是⑿还是⒀特别,但判断不了轻重了。
  ⒉不等的情况参见第㈠步的⒉⒊
6. 见下面的点 10条线的情况是 123 456 789 148 159 247 258 269 357 368
① ② ③

 ④⑤⑥

⑦ ⑧ ⑨

7.注意是24小时不是12小时。
首先考察时针与分针的情况,很容易看出分针转一圈与时针只重合一次,就是一小时一次。但11时与0时的分钟区内共享一个重合点,所只24


二.没有答案型
1.圆井盖掉不下去
2.一千万
3.顺时针方向。
4.
5.十万个
6.答案是"This feature is by design." 如果考官要求给出更加合理的解释,就对他说:"如果您对此问题有更多疑问,请与它的供应商(或者与它的发明人)联系"。 答案是眼睛是左右长着的。
7.如果不倾泻而出,这家旅馆将没有人去住。
8.告诉她这是最先进的东西,她不需要动手,我来帮她做就可以。
9.我想斯皮尔伯格来回答这道题是在合适不过得了。
10.我觉得回放飞网呆上半个月比较合适。
11.这题我没有任何想法,因为没有工作经验,所以完全没听明白他问的是什么!
12.做微软的OEM,这样能够更好的服务微软。
13.把主机箱集成在一个液晶显示器中! 只准开发我们认证的驱动!

三.难题
1.切两刀,分为1/7、2/7、4/7三段。第一天给1/7;第二天给2/7,要回1/7;第三天给1/7 ;第四天给4/7 要回1/7+2/7;第五天给1/7;第六天给2/7,要会1/7;第七天给1/7
2.北京到广州距离的30/35。
3.依次从四个罐子中取出1、2、3、4个药丸,设第一丸子应重为X,称得的重量是10X+t,t是几就是第几个罐子污染了。
4.先开一个,开很长时间。然后关掉,再开另一个。出去看,亮着的那个不用说。剩下的两个不亮的,按照灯泡的温度来进行判断。
5.可以用三张以内组成任何面额。
6.不清楚。可能是50%。

四.超难题
一) 设5个人分别是①②③④⑤
假设前面的都扔海里了,由④来分,无论他怎么分(包括全给⑤),都面临被否决扔海里的危险。
所以,当③来分时,④⑤一个不给,全由③独吞,④为了避免被扔海里的危险,也要同意,③的方案成立。
那么,在②分时,③是肯定要反对的,要赢得④⑤的同意,必须多给一个,否则有可能否决(对④⑤来说,反正③来分时还是0,你不多给一个就否决),所以②的分配方案一定是:②98 ③0 ④1 ⑤1
回到①来的分配,由于②肯定反对,为了赢得③④⑤的同意,必须在②分配方案的基础上给他们加一个,由于只需再争取两票,③④⑤中可以

排除争取一个,从收益来说,排除④⑤中的一个即可,那么①的分配方案为:①97 ③1 ④(或⑤)1 其它都不给!

二) 如果机场本身不可以加油的话 那么最少需要4架
3架同时起飞,到1/6圈时,两架飞机把各自油箱中的1/3加给另外一架,这两架剩的油正好可以原路飞回,被加油机可以飞到5/6圈处。
第4架飞机在环球飞机飞到4/6圈时起飞去接应,两飞机在5/6圈处相遇,环球机刚好用完油,加油机把1/3的油给环球机,两飞机刚好都能飞回


五.主观题
1.告诉用户我公司为答谢广大顾客长时间以来的厚爱,顾客可以持原电池免费更换使用寿命为原电池一倍的新型电池。或者可以持购买发票,获得50元购买该厂家新手机的折换券。
2.信件如下:
"xxx领导:您好!
我馆近期将展出一批珍贵文物,让更多的人能够真正的体会到中华民族文明的悠久、灿烂。我们希望能将您所拥有的明代的城砖展出。并且我们将在博物馆内设置专栏,宣传您对中华民族悠久文化的保存所作出的巨大贡献,让更多的华夏子孙看到,并且亲身体验到华夏文明的悠久历史,从而加强中华民族的凝聚力!"
解释:
领导看过这封信以后,如果不拿出城砖。那么也就说明他不想让更多的人看到中华民族的灿烂文明,不想让中华民族有更强的凝聚力。自然也就会拿出城砖。如果领导问到何时展出完毕,可以告诉他博物馆希望永久展出这些物品,领导自然也就无话可说了。

3.信件如下:
" 尊敬的顾客,您好!
由于工作人员的失误,误将一台样品机卖给您。为了您能够更好的使用我公司的产品,我公司决定为您免费更换同等价位的笔记本一台。并且我们有性价比更加优越的xxxII 型笔记本电脑,售价20000元人民币。如果您此时购买,我们将会以19000元的优惠价格售出。"


六.算法题
请参考数据结构和计算机算法类书籍,作者就不再抄书了。

附(1):烧绳子类问题总结:
一般给出的绳子都是不均匀的。如果一根为一小时,那么半个小时的计算方法是从两头烧。十五分钟的计算方法是从两头烧,同时从中间任何一个地方开始烧,这样这根绳子就有四个燃烧点,时间自然是一个燃烧点的四分之一。如果计算十分钟的时间,那么就让绳子有六个燃烧点,方法就不用说了吧!

附(2):天平称球问题解答以及总结:
将球分为a b c d; e f g h; i j k l 三组。

第一次称量,比较 abcd efgh

情形一:
两者重量相等,此时说明答案在ijkl中。
称量ij,
如果相等,说明答案在kl中。拿k与a比较,如果相等,答案为l;如果不等,答案为k。
如果不等,说明答案在ij中。拿i与a比较,如果相等,答案为j;如果不等,答案为i。


情形二:
abcd轻。
在efgh中取出fgh,替换掉abcd中的bcd。 在ijkl中取出jkl,补充到原来fgh的位置。
如果afgh轻,说明答案为a或e。称量ab,如果相等,答案为e;如果不等,答案为a。
如果afgh重,说明答案在fgh中。称量fg,如果相等,答案为h;如果不等,重者为答案。
如果一样重,答案在bcd中。称量bc,如果相等,答案为d;如果不等,轻者为答案。

情形三:
abcd重。
在efgh中取出fgh,替换掉abcd中的bcd。 在ijkl中取出jkl,补充到原来fgh的位置。
如果afgh重,答案为a或e。称量ab,如果相等,答案为e;如果不等,答案为a。
如果afgh轻,答案在fgh中。称量fg,如果相等,答案为h;如果不等,轻者为所求。
如果一样重,答案在bcd中。称量bc,如果相等,答案为d;如果不等,重者为答案。

至于13个球的称法,至今本人仍没想出来。望高手赐教。

总结:(转载)
天平称重,有两个托盘比较轻重,加上托盘外面,也就是每次称重有3个结果,就是ln3/ln2比特信息。n个球要知道其中一个不同的球,如果知道那个不同重量的球是轻还是重,找出来的话那就是n个结果中的一种,就是有ln(n)/ln2比特信息,如果不知道轻重,找出来就是2n(n个球中的一个,轻或者重,所以是2n)个结果中的一种,那就是ln(2n)/ln2比特信息。

假设我们要称k次,根据信息理论,那显然两种情况就分别有:
1. k*ln3/ln2>=ln(n)/ln2 (k>=1) 解得k>=ln(n)/ln3
2. k*ln3/ln2>=ln(2n)/ln2 (k>1) 解得k>=ln(2n)/ln3
这是得到下限,可以很轻易证明满足条件的最小正整数k就是所求。比如称3次知道轻重可以从3^3=27个球中找出不同的球出来,如果不知道轻重就只能从(3^3-1)/2=13个球中找出不同的球出来。


一.最基本题型(说明:此类题型比较简单)
1.烧一根不均匀的绳,从头烧到尾总共需要1个小时。现在有若干条材质相同的绳子,问如何用烧绳的方法来计时一个小时十五分钟呢?(这道题我当初想了一个小时)
2.你有一桶果冻,其中有黄色、绿色、红色三种,闭上眼睛抓取同种颜色的两个。抓取多少个就可以确定你肯定有两个同一颜色的果冻?(5秒-1分钟)
3.如果你有无穷多的水,一个3公升的提捅,一个5公升的提捅,两只提捅形状上下都不均匀,问你如何才能准确称出4公升的水?(40秒-3分钟)
4.一个岔路口分别通向诚实国和说谎国。来了两个人,已知一个是诚实国的,另一个是说谎国的。诚实国永远说实话,说谎国永远说谎话。现在你要去说谎国,但不知道应该走哪条路,需要问这两个人。请问应该怎么问?(20秒-2分钟)
5.12个球一个天平,现知道只有一个和其它的重量不同,问怎样称才能用三次就找到那个球。13个呢?(注意此题并未说明那个球的重量是轻是重,所以需要仔细考虑)(5分钟-1小时)
6.在9个点上画10条直线,要求每条直线上至少有三个点?(3分钟-20分钟)
7.在一天的24小时之中,时钟的时针、分针和秒针完全重合在一起的时候有几次?都分别是什么时间?你怎样算出来的?(5分钟-15分钟)


二.没有答案型(说明:这些题显然不是考你智力。而考的是你的反应能力。这种题大多数没有答案,但是要看你的反应喽!)
1.为什么下水道的盖子是圆的?
2.中国有多少辆汽车?
3.将汽车钥匙插入车门,向哪个方向旋转就可以打开车锁?
4.如果你要去掉中国的34个省(含自治区、直辖市和港澳特区及台湾省)中的任何一个,你会去哪一个,为什么?
5.多少个加油站才能满足中国的所有汽车?
6.想象你站在镜子前,请问,为什么镜子中的影象可以颠倒左右,却不能颠倒上下?
7.为什么在任何旅馆里,你打开热水,热水都会瞬间倾泻而出?
8.你怎样将Excel的用法解释给你的奶奶听?
9.你怎样重新改进和设计一个ATM银行自动取款机?
10.如果你不得不重新学习一种新的计算机语言,你打算怎样着手来开始?
11.如果你的生涯规划中打算在5年内受到奖励,那获取该项奖励的动机是什么?观众是谁?
12.如果微软告诉你,我们打算投资五百万美元来启动你的投资计划,你将开始什么样商业计划?为什么?
13.如果你能够将全世界的电脑厂商集合在一个办公室里,然后告诉他们将被强迫做一件事,那件事将是什么?


三.难题(说明:这类题有一定难度,如果得不到答案,也不能说明什么。如果你想到了解题思路,那么答案马上就能出来。如果想不到思路,那么……就别想解出来了。)
1.你让工人为你工作7天,回报是一根金条,这个金条平分成相连的7段,你必须在每天结束的时候给他们一段金条。如果只允许你两次把金条弄断,你如何给你的工人付费?
2.有一辆火车以每小时15公里的速度离开北京直奔广州,同时另一辆火车每小时20公里的速度从广州开往北京。如果有一只鸟,以30公里每小时的速度和两辆火车同时启动,从北京出发,碰到另一辆车后就向相反的方向返回去飞,就这样依次在两辆火车之间来回地飞,直到两辆火车相遇。请问,这只鸟共飞行了多长的距离?
3.你有四个装药丸的罐子,每个药丸都有一定的重量,被污染的药丸是没被污染的药丸的重量+1。只称量一次,如何判断哪个罐子的药被污染了?
4.门外三个开关分别对应室内三盏灯,线路良好,在门外控制开关时候不能看到室内灯的情况,现在只允许进门一次,确定开关和灯的对应关系?
5.人民币为什么只有1、2、5、10的面值?
6.你有两个罐子以及50个红色弹球和50个蓝色弹球,随机选出一个罐子,
随机选出一个弹球放入罐子,怎么给出红色弹球最大的选中机会?在你的计划里,得到红球的几率是多少?


四.超难题(说明:如果你是第一次看到这种题,并且以前从来没有见过类似的题型,并且能够在半个小时之内做出答案。只能说明你的智力超常……)
第一题 . 五个海盗抢到了100颗宝石,每一颗都一样大小和价值连城。他们决定这么分:
抽签决定自己的号码(1、2、3、4、5)
首先,由1号提出分配方案,然后大家表决,当且仅当超过半数的人同意时,按照他的方案进行分配,否则将被扔进大海喂鲨鱼
如果1号死后,再由2号提出分配方案,然后剩下的4人进行表决,当且仅当超过半数的人同意时,按照他的方案进行分配,否则将被扔入大海喂鲨鱼
依此类推
条件:每个海盗都是很聪明的人,都能很理智地做出判断,从而做出选择。
问题:第一个海盗提出怎样的分配方案才能使自己的收益最大化?

第二题 . 一道关于飞机加油的问题,已知:
每个飞机只有一个油箱,
飞机之间可以相互加油(注意是相互,没有加油机)
一箱油可供一架飞机绕地球飞半圈,
问题:
为使至少一架飞机绕地球一圈回到起飞时的飞机场,至少需要出动几架飞机?(所有飞机从同一机场起飞,而且必须安全返回机场,不允许中途降落,中间没有飞机场)



五.主观题(说明:在以后的工作过程中,我们可定会犯这样那样的错误。既然错误已经酿成,损失在所难免,我们只能想办法把损失减少到最小。如果能巧妙地回答出这些问题,再发生错误的情况下。能让客户有最少的抱怨,公司有最少的损失。)
1.某手机厂家由于设计失误,有可能造成电池寿命比原来设计的寿命短一半(不是冲放电时间),解决方案就是免费更换电池或给50元购买该厂家新手机的折换券。请给所有已购买的用户写信告诉解决方案。
2.一高层领导在参观某博物馆时,向博物馆馆员小王要了一块明代的城砖作为纪念,按国家规定,任何人不得将博物馆收藏品变为私有。博物馆馆长需要如何写信给这位领导,将城砖取回。
3.营业员小姐由于工作失误,将2万元的笔记本电脑以1.2万元错卖给李先生,王小姐的经理怎么写信给李先生试图将钱要回来?


六.算法题(说明:这些题就不是什么花样了,考的是你的基础知识怎么样。再聪明而没有实学的人都将会被这些题所淘汰。)
1.链表和数组的区别在哪里?
2.编写实现链表排序的一种算法。说明为什么你会选择用这样的方法?
3.编写实现数组排序的一种算法。说明为什么你会选择用这样的方法?
4.请编写能直接实现strstr()函数功能的代码。
5.编写反转字符串的程序,要求优化速度、优化空间。
6.在链表里如何发现循环链接?
7.给出洗牌的一个算法,并将洗好的牌存储在一个整形数组里。
8.写一个函数,检查字符是否是整数,如果是,返回其整数值。(或者:怎样只用4行代码编写出一个从字符串到长整形的函数?)
9.给出一个函数来输出一个字符串的所有排列。
10.请编写实现malloc()内存分配函数功能一样的代码。
11.给出一个函数来复制两个字符串A和B。字符串A的后几个字节和字符串B的前几个字节重叠。
12.怎样编写一个程序,把一个有序整数数组放到二叉树中?
13.怎样从顶部开始逐层打印二叉树结点数据?请编程。
14.怎样把一个链表掉个顺序(也就是反序,注意链表的边界条件并考虑空链表)?

答案请见下页


1 2 >>

©2001-2004 版权归放飞技术小组所有。放飞技术小组保留对此的一切权利。
©2001-2004 Frontfree Workgroup. All rights reserved. 全部文章



一个人可带6天粮食,怎样雇人帮忙,走完12天路程







--------------------------我是华丽的分隔线----------------------------------------------


天地之灵的回答:

1、没有什么疑问的,先从中间和两侧同时烧一根,再完整的从一端烧一根。
2、4个。这是小学奥赛的抽屉原理。
3、提5公升-倒满三公升的桶,剩两公升-倒掉三公升的,将两公升倒入三公升的桶-将5公升的桶再装满-从五公升的桶将三公升的桶倒满,5公升的桶里剩4公升 (头晕啊,写出来了,不过好乱,不知道大家能不能看的懂)
4、请问我如果问他诚实国从哪边走,他会怎么回答?按照他回答的方向走,就能到说谎国。(原来附带的答案好些,就问“你的国家怎么走”,然后朝另一个方向走)
5、 附(1):烧绳子类问题总结:
一般给出的绳子都是不均匀的。如果一根为一小时,那么半个小时的计算方法是从两头烧。十五分钟的计算方法是从两头烧,同时从中间任何一个地方开始烧,这样这根绳子就有四个燃烧点,时间自然是一个燃烧点的四分之一。如果计算十分钟的时间,那么就让绳子有六个燃烧点,方法就不用说了吧!
附(2):天平称球问题解答以及总结:
将球分为a b c d; e f g h; i j k l 三组。
第一次称量,比较 abcd efgh
情形一:
两者重量相等,此时说明答案在ijkl中。
称量ij,
如果相等,说明答案在kl中。拿k与a比较,如果相等,答案为l;如果不等,答案为k。
如果不等,说明答案在ij中。拿i与a比较,如果相等,答案为j;如果不等,答案为i。

情形二:
abcd轻。
在efgh中取出fgh,替换掉abcd中的bcd。 在ijkl中取出jkl,补充到原来fgh的位置。
如果afgh轻,说明答案为a或e。称量ab,如果相等,答案为e;如果不等,答案为a。
如果afgh重,说明答案在fgh中。称量fg,如果相等,答案为h;如果不等,重者为答案。
如果一样重,答案在bcd中。称量bc,如果相等,答案为d;如果不等,轻者为答案。
情形三:
abcd重。
在efgh中取出fgh,替换掉abcd中的bcd。 在ijkl中取出jkl,补充到原来fgh的位置。
如果afgh重,答案为a或e。称量ab,如果相等,答案为e;如果不等,答案为a。
如果afgh轻,答案在fgh中。称量fg,如果相等,答案为h;如果不等,轻者为所求。
如果一样重,答案在bcd中。称量bc,如果相等,答案为d;如果不等,重者为答案。
至于13个球的称法,至今本人仍没想出来。望高手赐教。onefi@frontfree.net
总结:(转载)
天平称重,有两个托盘比较轻重,加上托盘外面,也就是每次称重有3个结果,就是ln3/ln2比特信息。n个球要知道其中一个不同的球,如果知道那个不同重量的球是轻还是重,找出来的话那就是n个结果中的一种,就是有ln(n)/ln2比特信息,如果不知道轻重,找出来就是2n(n个球中的一个,轻或者重,所以是2n)个结果中的一种,那就是ln(2n)/ln2比特信息。
假设我们要称k次,根据信息理论,那显然两种情况就分别有:
1.k*ln3/ln2>=ln(n)/ln2 (k>=1) 解得k>=ln(n)/ln3
2.k*ln3/ln2>=ln(2n)/ln2 (k>1) 解得k>=ln(2n)/ln3
这是得到下限,可以很轻易证明满足条件的最小正整数k就是所求。比如称3次知道轻重可以从3^3=27个球中找出不同的球出来,如果不知道轻重就只能从(3^3-1)/2=13个球中找出不同的球出来。

6、见8-1.bmp
7、首先:时针和分针相遇22次。24小时可以看做2个12小时,每个12小时时针转1圈,分针转12圈,共追及11次。所以时针位置为n/11,分针位置为(n/11)*12-n=n/11,秒针位置为((n/11)*60)的小数部分,为(n*5)/11的小数部分,分别为:
0,5,10,4,9,3,8,2,7,1, 6, 对应
0,1, 2,3,4,5,6,7,8,9,10,只有一个相同,所以每12小时只有一次相遇,因此一天只有2次相遇,分别在0:00和12:00
二、
1、因为圆形的盖子只要直径略大于下水道的内径,不论以什么角度,都不会掉进下水道里。而下水道为圆形则可以节省材料。
2、34个省,每省26字母,加后面十万个数字,号码有效率大约10%,估计为884万辆,又新出编号方案,估计总数略多于884万辆,,大约一千万辆左右。
3、顺时针。
4、海南。
5、按每加油站100辆车算,估计十万个。
6、因为人的眼睛是一左一右。(据说这种回答受不到微软的欢迎)
7、/lh碰到这种问题我会卡壳,也许会勉强答道:因为旅馆的服务提供了热水。
8、/lh我没有想到答案,题目附带的答案很奇妙:告诉她这是最先进的东西,她不需要动手,我来帮她做就可以。
9、/lh看来我没有进微软的缘分。我也许会勉强答道:我会让键盘变的更小。
10、找到一本该语言的入门书,下载一个该语言的编译器或解释器,然后粗略的扫一遍所有课程,再认真完成所有课后习题。
11、大约是因为工作狂热而获奖。动机是让我能配一台更好的电脑。观众是所有和我一起工作的人,包括我的上司和下属和同级的同事。
12、制造免费的软件,为微软做广告,然后让微软付更多的广告费用。
13、同一种类型的硬件除了性能不同外不允许在底层操作上有任何不同。

三、
1、这个很简单,分成1/7,2/7,4/7三段。
2、设北京和上海相距S公里,火车总共开了S/(15+20)=S/35 小时,所以鸟飞了(S/35)*30=S*6/7的距离。
3、把四个罐子编号,分别拿出1粒、2粒、3粒、4粒药丸,称量总重量,减去10,就是被污染的罐子编号。
4、先开一个,开很长时间。然后关掉,再开另一个。出去看,亮着的那个不用说。剩下的两个不亮的,按照灯泡的温度来进行判断。
5、既便于计数(符合十进制习惯),又可以尽量减少同样面额人民币需要的纸币张数
6、50%。

四、
1、假设五个海盗都如天地之灵一样聪明(:D)姑且称之为A、B、C、D、E五个海盗,E清楚的知道,只要其他四个人全部死光了,他就能独享所有的财产,因此当D提出方案时,他都会毫不犹豫地否决。D也知道这点,所以当C提出方案时,D会毫不犹豫的通过,于是B提出方案时,C会毫不犹豫的反对,而只要给D、E每人1颗宝石,D、E就会支持B的方案。同样,A提出方案时,只要给C 1颗宝石,给D或E中的某一个2块宝石,B反对,D和E中的另一人反对,加上A自己,就会通过。因此,A的最佳方案是:
自己97块宝石,B没有,C一块,D二块,E没有。

2、这里节录若干个经典回答:
1、最变态的回答:1架,在北极出发。
2、最科幻的回答:1架,进入卫星轨道,做圆周运动。
3、最可能是正确答案的答案:
  首先,若干飞机一齐飞,飞到1/3个半圈的时候(即所有飞机都消耗了1/3的油)一半飞机将其他飞机加满,剩下的油刚够飞回机场,又飞了2/9个半圈,即到了5/9个半圈的时候,一半飞机将其他飞机加满,剩下的油刚够飞回机场。此时只需要剩下一架飞机,它满满的油箱将有能力带它飞到另一个半球的5/9的位置(共要飞8/9个油箱的距离),那里又有一架还剩7/9油的飞机等着它(另一架飞机帮助它飞过来的),为它加上2/9的油后,他们结伴飞回,在3/9的位置上,又有一架飞机来帮它添上1/3的油,并且结伴飞回,总共出动了3+1+3=7架飞机。

五、以下为原题附带的答案。
1.告诉用户我公司为答谢广大顾客长时间以来的厚爱,顾客可以持原电池免费更换使用寿命为原电池一倍的新型电池。或者可以持购买发票,获得50元购买该厂家新手机的折换券。
2.信件如下:
“xxx领导:您好!
我馆近期将展出一批珍贵文物,让更多的人能够真正的体会到中华民族文明的悠久、灿烂。我们希望能将您所拥有的明代的城砖展出。并且我们将在博物馆内设置专栏,宣传您对中华民族悠久文化的保存所作出的巨大贡献,让更多的华夏子孙看到,并且亲身体验到华夏文明的悠久历史,从而加强中华民族的凝聚力!”
解释:
领导看过这封信以后,如果不拿出城砖。那么也就说明他不想让更多的人看到中华民族的灿烂文明,不想让中华民族有更强的凝聚力。自然也就会拿出城砖。如果领导问到何时展出完毕,可以告诉他博物馆希望永久展出这些物品,领导自然也就无话可说了。
3.信件如下:
“ 尊敬的顾客,您好!
由于工作人员的失误,误将一台样品机卖给您。为了您能够更好的使用我公司的产品,我公司决定为您免费更换同等价位的笔记本一台。并且我们有性价比更加优越的xxxII 型笔记本电脑,售价20000元人民币。如果您此时购买,我们将会以19000元的优惠价格售出。”

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics