公安人员审问四名窃贼嫌疑犯。已知,这四人当中仅有一名是窃贼,还知道
这四人中每人要么是诚实的,要么总是说谎的。在回答公安人员的问题中:
甲说:“乙没有偷,是丁偷的。”
乙说:“我没有偷,是丙便的。”
丙说:“甲没有偷,是乙偷的。”
丁说:“我没有偷。” // 可以用 d==0 || d==1 表示d 是真 是假 也可以用 d==0 && a+b+c+d==1
请根据这四人的答话判断谁是盗窃者。
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[]) {
int a,b,c,d;
for(a=0;a<=1;a++)
for(b=0;b<=1;b++)
for(c=0;c<=1;c++)
for(d=0;d<=1;d++)
{ if((b+c==1)&&(b+c==1)&&(a+b==1)&&(d==0)&&(a+b+c+d==1))
printf("a=%d b=%d c=%d d=%d \n",a,b,c,d);
}
return 0;
}