有意思-------------
由于戴尔被谋杀,亚当、布拉德和科尔这三个怀疑对象在不同的时间里分别受到警方传讯。
他们每人各作了一条供词,一共三条:
(1)亚当是无辜的。
(2)布拉德说的是真话。
(3)科尔在撒谎。
供词(1)是最先讲的;供词(2)和(3),不一定是按讲话的时间先后排序的,但它们都是针对在其前面所作的供词的。
1.每人作的一条供词,都是针对另一个怀疑对象。
2.凶手是这三人中的一个,他作的是伪供。 这个题我手算了半天也没算出来,编程一运行,居然出来了. main(){int i,j,k,a,b,c; for(i=0;i<2;i++) for(j=0;j<2;j++) for(k=0;k<2;k++){ a=i,b=j,c=k; if((!a||!b)&&(b||a)&&(!b||!c)&&(c||b)&&(!c||(!a&&!b))&&((a||b)||c)) {printf("a=%d",a); printf("b=%d",b); printf("c=%d",c);}} abc分别是亚当布拉德科尔,1是凶手,0不是.
----------------解决方案--------------------------------------------------------
没看明白
----------------解决方案--------------------------------------------------------
我也是的,好晕……
----------------解决方案--------------------------------------------------------