论坛首页 综合技术论坛

EMC面试题

浏览 24789 次
锁定老帖子 主题:EMC面试题
精华帖 (0) :: 良好帖 (1) :: 新手帖 (0) :: 隐藏帖 (1)
作者 正文
   发表时间:2011-10-02  

1.有两堆东西,一堆4个,一堆7个,两个人开始拿东西,一次可以拿任意个,但只能从一堆中拿。现规定:如果最后剩下一个,而且轮到谁拿谁就输了。现在你先拿,请问有致胜方法吗?

 

2.手机上每个数字对应几个字母,给你一串数字,请你输出所有可能的字符串。要求是最好的算法。好像这个《编程之美》上面有的。

   发表时间:2011-10-10  
第一题是不是第一次拿要保证拿的那一堆剩2个就行了?就是4个的拿2个或者7个的拿5个
0 请登录后投票
   发表时间:2011-10-10  
关于第2题,我看了下我的E63...还是全尺寸键盘好啊
0 请登录后投票
   发表时间:2011-10-10  
第一题关键在于谁导致其中1堆只剩1个谁就输,因此临界点就是谁导致两堆都为2个的为赢家,拿掉第2堆的3个使得两堆数量相等,接下来只要在没有出现1个的情况下使两堆相等就行了,某一堆出现1个,就拿光另一堆
0 请登录后投票
   发表时间:2011-10-10  
第二题就是求1对n的所有集合
0 请登录后投票
   发表时间:2011-10-10  
第一题是动态博弈啊.我记得是前者拿几个,后者就对应拿几个.后者赢.
如果想前者赢,那么就让先者的从任意堆拿1个,然后跟着后者拿.

第二题:排列组合公式啊.先把0-9每个数字对应的字母列出来.比如1->a,b,c 2->d,e,f 0->*

那么给定12,可能的组合为C(3,1)*C(3,1) = 9

给定1201,可能的组合为C(3,1)*C(3,1)*C(1,1)*C(3,1) = 27

最后用递归算字符串: C(n,k) = C(n,k-1) + C(n-1,k-1)
0 请登录后投票
   发表时间:2011-10-10  
第一题 博弈论
0 请登录后投票
   发表时间:2011-10-10   最后修改:2011-10-10
第一题应该不难吧.我只要保证我每一次拿完后,两堆一样多我就是必胜的.
0 请登录后投票
   发表时间:2011-10-10  
aidirac 写道
第一题应该不难吧.我只要保证我每一次拿完后,两堆一样多我就是必胜的.



正解 +1
0 请登录后投票
   发表时间:2011-10-10  
看到第一题 就想起了那个题:

说一个圆桌子,然后一大堆相同的硬币,让硬币平铺桌面,两个人谁最后一个放 谁就赢,现在你先放 有什么制胜方法
0 请登录后投票
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics