脚本宝典收集整理的这篇文章主要介绍了

每天一道算法题

脚本宝典小编觉得挺不错的,现在分享给大家,也给大家做个参考,希望能帮助你少写一行代码,多一份安全和惬意。

今天给大家的是一道阿里巴巴的面试题:
话不多少看题目:

    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。

欢迎关注我们的微信公众号In客笔记,学习更多算法,数据结构,Linux,Python知识。
图片描述

总结

以上是脚本宝典为你收集整理的

每天一道算法题

全部内容,希望文章能够帮你解决

每天一道算法题

所遇到的程序开发问题,欢迎加入QQ群277859234一起讨论学习。如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典网站推荐给程序员好友。 本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。

80%的人都看过