华为面试问题145

就我个人分析,我认为是A撒了谎,丁偷的。

理由:以‘只有一个人说谎,一个人偷窃’为条件,结合四个人的话。可以判断结果是:

1.如果A偷,A和D都说谎;

2.如果B偷,A、B、D都说谎;

3.如果C偷,A和D都说谎;

4.如果B说谎,A也说谎;

5.如果C说谎,B也说谎;

6.如果丁说谎,甲也说谎;

7.当A说谎时,B、C和D只有一句话‘如果B没偷,那就是我偷的’。如果是真的,就会发现是他偷的。