一个经典的说谎问题,题目大致意思如下:
一个岔路口分别通向诚实国和说谎国,来了两个人,一个说真话一个说假话,我们不知道哪个说真话哪个说假话,现在要去诚实国,问两个人,请问怎么问才能到诚实国。
方法当然是问其中一个人,这条路是去诚实国的吗,然后问第二个人,根据他得回答分析。
这个不时重点,重点是题目要用编程中的逻辑运算表达式解释原因?这该如何用逻辑运算表达式解释原因呢?
一个经典的说谎问题,题目大致意思如下:
一个岔路口分别通向诚实国和说谎国,来了两个人,一个说真话一个说假话,我们不知道哪个说真话哪个说假话,现在要去诚实国,问两个人,请问怎么问才能到诚实国。
方法当然是问其中一个人,这条路是去诚实国的吗,然后问第二个人,根据他得回答分析。
这个不时重点,重点是题目要用编程中的逻辑运算表达式解释原因?这该如何用逻辑运算表达式解释原因呢?
这时候不知道
a
和b
哪个是真哪个是假,但是一定知道a && b
是假,a || b
是真。联合两个人的说话,向 b 问:如果我问 a 这条路是否通向诚实图,他会怎么回答?
不管谁回答的是假话,这个综合的结果都一定是假的。