//一天,发生了一起凶杀案。警方逮捕了5个嫌疑犯:A,B,C,D,E。已知凶手是这5个人中的1个人,凶杀案发生的时候现场只有凶手和被害人两个人,没有其他人。另外已知下列条件:
//(1)A没有和C或E在一起,除非B和D在一起;
//(2)C没有和B或E在一起,除非A和D在一起;
//(3)B没有和C或D在一起,除非A和E在一起;
//(4)E没有和B或D在一起,除非A和C在一起;
//(5)D没有和A或C在一起,除非B和E在一起。
#include<stdio.h>
int main()
{
int a,b,c,d,e,c1,c2,c3,c4,c5;
for(a=0;a<2;a++)
{
for(b=0;b<2;b++)
{
for(c=0;c<2;c++)
{
for(d=0;d<2;d++)
{
for(e=0;e<2;e++)
{
if(b==1&&d==1)//1
{
c1=(a==1&&c==1)||(a&&e);
}
if((b&&(!d))||((!b)&&d))
{
c1=(a&&(!c))&&(a&&(!e));
}
if(a&&d)//2
{
c2=(b&&c)||(b&&e);
}
if((a&&(!d))||((!a)&&d))
{
c2=(c&&(!b))&&(c&&(!e));
}
if(a&&e)//3
{
c3=(b&&c)||(b&&d);
}
if((a&&(!e))||((!a)&&e))
{
c3=(b&&(!c))&&(b&&(!d));
}
if(a&&c)//4
{
c4=(e&&b)||(e&&d);
}
if((a&&(!c))||((!a)&&c))
{
c4=(e&&(!b))&&(e&&(!d));
}
if(b&&e)//5
{
c5=(d&&a)||(a&&c);
}
if((b&&(!e))||((!b)&&e))
{
c5=(d&&(!a))&&(d&&(!c));
}
if(c1+c2+c3+c4+c5==4)
{
if(a==0)
{
printf("A ");
}
if(b==0)
{
printf("B ");
}
if(c==0)
{
printf("C ");
}
if(d==0)
{
printf("D ");
}
if(e==0)
{
printf("E");
}
}
}
}
}
}
}
printf("\n");
return 0;
}
//(1)A没有和C或E在一起,除非B和D在一起;
//(2)C没有和B或E在一起,除非A和D在一起;
//(3)B没有和C或D在一起,除非A和E在一起;
//(4)E没有和B或D在一起,除非A和C在一起;
//(5)D没有和A或C在一起,除非B和E在一起。
#include<stdio.h>
int main()
{
int a,b,c,d,e,c1,c2,c3,c4,c5;
for(a=0;a<2;a++)
{
for(b=0;b<2;b++)
{
for(c=0;c<2;c++)
{
for(d=0;d<2;d++)
{
for(e=0;e<2;e++)
{
if(b==1&&d==1)//1
{
c1=(a==1&&c==1)||(a&&e);
}
if((b&&(!d))||((!b)&&d))
{
c1=(a&&(!c))&&(a&&(!e));
}
if(a&&d)//2
{
c2=(b&&c)||(b&&e);
}
if((a&&(!d))||((!a)&&d))
{
c2=(c&&(!b))&&(c&&(!e));
}
if(a&&e)//3
{
c3=(b&&c)||(b&&d);
}
if((a&&(!e))||((!a)&&e))
{
c3=(b&&(!c))&&(b&&(!d));
}
if(a&&c)//4
{
c4=(e&&b)||(e&&d);
}
if((a&&(!c))||((!a)&&c))
{
c4=(e&&(!b))&&(e&&(!d));
}
if(b&&e)//5
{
c5=(d&&a)||(a&&c);
}
if((b&&(!e))||((!b)&&e))
{
c5=(d&&(!a))&&(d&&(!c));
}
if(c1+c2+c3+c4+c5==4)
{
if(a==0)
{
printf("A ");
}
if(b==0)
{
printf("B ");
}
if(c==0)
{
printf("C ");
}
if(d==0)
{
printf("D ");
}
if(e==0)
{
printf("E");
}
}
}
}
}
}
}
printf("\n");
return 0;
}