A、B、C、D四人应聘一个程序员职位,此职务的要求条件是:Java熟练;懂数据库开发;会web开发;有C++经验。谁满足的条件最多,谁就被雇用。 把上面四个要求条件两两组合,每个组合都恰有一人满足。同时已知
A和B Java熟练
B和C会web
C和D懂数据库
D有C++经验
那么,被雇用的是( )
A: A
B: B
C: C
D: D
E:四人机会均等
F:以上均错


下面给出解析:

这里提供几种方法:

第一种,恩是的没错,是我的心算!
我们通过题目得知①:
A:java熟练
B:java熟练而且会web
C:会web而且懂数据库
D:懂数据库而且有C++经验

上面四个要求条件两两组合,每个组合都恰有一人满足。这句话是问题的突破口。

什么意思呢?举个栗子,我们说到既会java又会web的那就锁定了B,既会web又会数据库的那就锁定了C,目前A除了Java还会什么未知。

根据①我们知道
会java的和会web的锁定B,但是A也会java,但是根据题目要求,我们知道A不符合这个要求,得出②A不会Web,同理我们得出B不懂数据库,C不会C++,D不会Web。
那么会Web和有C++经验的呢?根据我们得出的结论②可以推算出,这个人是B因为AD不会web,C不会C++,现在我们知道③B:java熟练,会Web,会C++,且不懂数据库。
然后会C++,和Java的呢?我们根据③得出,还是B,这不是关键,关键是我们知道了,A不会C++,D不会Java。(D只会C++和数据库)

然后会数据库和Java的呢?因为B不会数据库,D不会Java,所以结论应该A和C中得出,不急我们接着看,会Web和Java的呢?满足条件的还是B,那么也就是说,C不会Java(C只会Web和数据库)

ok,到这里不用再分析了,B会的最多,Congratulations,u get the offer。

你答对了吗?

第二种思路:

就是我们可以绘制一个表格:

表1
条件甲:Java&Web B
条件乙:数据库&Web C
条件丙:数据库&C++ D

依次检查上面空格的每一项,若与甲乙丙三个条件矛盾,则使用x表示并且标注与那个条件矛盾,若没有矛盾则保持空白:

表2
通过分析表2,最终的人员和技能如表3所示:

表3

B掌握了三项技术,所以选择B。
这不是广告这是福利!!!!关注微信公共号 每天都有更新哦

clipboard.png


helloworld
9 声望43 粉丝

« 上一篇
多米诺骨牌
下一篇 »
称重的问题