迈瑞的四道IQ笔试题

来源:百度文库 编辑:神马文学网 时间:2024/04/27 12:24:56
(1 )8*6方格,从左下角走到右上角,只能向右或向上走,问有多少种走法?
(2 )一根金条断三次分十五天支付,如何做到?
(3 )一根不均匀绳子烧完要一小时,有若干条绳子,烧绳计时一小时十五分?
(4 )扑克牌问题,比鬼谷问题简单太多,题目条件:不知道;知道不知道;--〉知道;知道,推牌是哪一张。
后三题都是常规题了,可能(1)显得陌生一点
我做了一个程序,来测试结果:
cpp 代码
1. #include       2. using namespace std;      3. void visit(int& count,int row,int col,const int& rowSize,const int& colSize);      4. int main(){      5.     int count=1;//初始为1,因为从左下角出发进入visit时已经丢失统计了一条路径      6.     const int rowsize=8;      7.     const int colsize=6;      8.     visit(count,rowsize,0,rowsize,colsize);      9.     cout<< 10.     getchar();     11.          12. }    13. /*进入一个点情况,如果非第一行或最后一列,路径变化情况就会加一,递归调用*/   14. void visit(int& count,int row,int col,const int& rowSize,const int& colSize){     15.      if(row!=0&&col!=colSize)     16.        ++count;     17.      else return;     18.      visit(count,row-1,col,rowSize,colSize);        19.      visit(count,row,col+1,rowSize,colSize);             20. }
其实这是一个填空题,解法肯定可以用数学方法来解,揭露本质吧:这条路径必须要十四步,8上6右,故是排列组合问题,答案:C6/14
做做我出的题吧。
8*8的格,也是这么走不过有一条,不能越过对角线。(左下到右上的)。
呵呵。这个绝对有难度。反正我当时做了1个小时。扩展到n*n,又用了2-3个小时。
可能比较碰巧,在我的实现上只增加了两行代码,就解决了“不能越过对角线”问题