当前位置: 代码迷 >> C语言 >> 有意思-------------
  详细解决方案

有意思-------------

热度:467   发布时间:2005-03-16 17:00:00.0
有意思-------------

由于戴尔被谋杀,亚当、布拉德和科尔这三个怀疑对象在不同的时间里分别受到警方传讯。

  他们每人各作了一条供词,一共三条:

  (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不是.


----------------解决方案--------------------------------------------------------
没看明白
----------------解决方案--------------------------------------------------------
我也是的,好晕……
----------------解决方案--------------------------------------------------------
  相关解决方案