找出小偷(2)

找出小偷(2)

问题描述

有这样的逻辑推理问题:已知5个人是小偷嫌疑人,名字分别叫"A"、"B"、"C"、"D"、"E",假设你是警察,请编写一个程序判断谁是小偷。他们说话的内容如下。
A:我不是小偷。
B:C是小偷。
C:D是小偷。
D:C不是小偷。
E:我不是小偷。
输入说明:正整数n(1<=n<5),表示说谎的人数,例如n=1,表示5人中有1人说谎;n=2则表示有2个人说谎。
输出说明:一行或两行。如果找到小偷,输出2行,第一行为可能是小偷的个数,第二行为小偷的名字,且名字从A~E的顺序输出。(如果小偷人数超过1人,名字之间用空格分割);如果无法推断出小偷,则输出1行,结果为0即可。

注意:说谎的人并不代表一定是小偷,通过判断谁是小偷,推断有n个人说谎。

测试案例1:

输入:

1

输出:

1
D

测试案例2:

输入:

4

输出:

0