4人中有3人说真话, 1人说假话, 用代码找出说假话的人

2023-06-19  本文已影响0人  饱饱想要的灵感

图书馆图书失窃, 找到可疑学生4人, 已知4人中有3人说真话, 1人说假话, 请用代码找出说假话的人

A: 不是我干的
B: 是C干的
C: 是D干的
D: C在胡说

思路: 分别假设ABCD为窃书人, 哪一次假设符合3人真话1人假话的条件, 即可找出窃书人.

@Test
public void findThief(){
    for (char thief ='A'; thief <= 'D'; thief++)
    {
        if ((thief != 'A'?1:0)+(thief == 'C'?1:0)+(thief == 'D'?1:0)+ (thief != 'D'?1:0) == 3)
        {
            System.out.printf("窃书的人是: %c\n", thief);
        }
    }
}
上一篇 下一篇

猜你喜欢

热点阅读