某地发生了一件谋杀案,警察通过排查确定杀人凶手为4个嫌疑犯中的一个。以下为4个嫌疑犯的供词。
A说:不是我。
B说:是C。
C说:是D。
D说:C在胡说。
已知3个人说了真话,1个人说的是假话。现在请根据这些信息,写一个程序来确定到底谁是凶手。
就这么一个题目,如果是我,我觉得很难和程序联系起来,以为是八杆子打不到的事。
具体分析:
A说:不是我。 --> killer != 'A'
B说:是C。 --> killer == 'C'
C说:是D。 --> killer == 'D'
D说:C在胡说。 --> killer != 'D'
穷举。A、B、C、D分别是凶手。
然后计算这4个关系表达式的是否正确,统计正确的个数,为3的时候就是答案。
后面还有个更奇特的题目:
5位选手参加10米跳台,预测比赛结果:
A:B第一,我第三。
B:我第二,E第四。
C:我第一,D第二。
D:C最后,我第三。
E:我第四,A第一。
比赛结束后,各说对了一半。求比赛名词。
A说:不是我。
B说:是C。
C说:是D。
D说:C在胡说。
已知3个人说了真话,1个人说的是假话。现在请根据这些信息,写一个程序来确定到底谁是凶手。
就这么一个题目,如果是我,我觉得很难和程序联系起来,以为是八杆子打不到的事。
具体分析:
A说:不是我。 --> killer != 'A'
B说:是C。 --> killer == 'C'
C说:是D。 --> killer == 'D'
D说:C在胡说。 --> killer != 'D'
穷举。A、B、C、D分别是凶手。
然后计算这4个关系表达式的是否正确,统计正确的个数,为3的时候就是答案。
后面还有个更奇特的题目:
5位选手参加10米跳台,预测比赛结果:
A:B第一,我第三。
B:我第二,E第四。
C:我第一,D第二。
D:C最后,我第三。
E:我第四,A第一。
比赛结束后,各说对了一半。求比赛名词。