快捷搜索:  as  test  1111  test aNd 8=8  test++aNd+8=8  as++aNd+8=8  as aNd 8=8

兴旺娱乐官方网站:加注解的纸条问题简易解法



有a。b。c。d。e,每小我额头上贴了一张或黑或兴旺娱乐官方网站白的纸。5人对做,都可看到其他人的颜色,但不知道自己的。5人互相察看:

A说 有3个贴白纸,1人贴黑纸

B说 四人兴旺娱乐官方网站都是贴的黑纸

C说 有1小我贴白纸,其他三人贴黑纸

D说 4人都是白纸E什么也没说

现在已知额头黑纸的人都说的是谎言,贴白纸的人说的是实话。编程,输出这五人中额头贴白纸得人选和贴黑纸的人选。

可以用简略单纯的说话来解这道题。措施是很原始的斟酌整个环境,但十分易于理解。法度榜样如下:

print(int m)

{if(m==0)printf("white");

else p兴旺娱乐官方网站rintf("black");

}/*输出判断的函数*/

main()

{int a[5]=;/*“0”代表“白”,

“1”代表“黑”。*/

int i;

for(a[4]=0;a[4]<=1;a[4]++)

for(a[3]=0;a[3]<=1;a[3]++)

for(a[2]=0;a[2]<=1;a[2]++)

for(a[1]=0;a[1]<=1;a[1]++)

for(a[0]=0兴旺娱乐官方网站;a[0]<=1;a[0]++)/*排列组合,斟酌所有可能*/

{

if(a[0]==0){if(a[1]+a[2]+a[3]+a[4]==1);else continue;}/*照原题进行判断*/

else{if(a[1]+a[2]+a[3]+a[4]!=1);else continue;}

if(a[1]==0){if(a[0]+a[2]+a[3]+a[4]==4); else continue;}

else{if(a[0]+a[2]+a[3]+a[4]!=4);else continue;}

if(a[2]==0){if(a[0]+a[1]+a[3]+a[4]==3);else continue;}

els兴旺娱乐官方网站e{if(a[0]+a[1]+a[3]+a[4]!=3);else continue;}

if(a[3]==0){if(a[0]+a[1]+a[2]+a[4]==0);else continue;}

else{if(a[0]+a[1]+a[2]+a[4]!=0);else continue;}

printf("A:");/*输出结果*/

print(a[0]);

printf(" B:");

print(a[1]);

printf(" C:");

print(a[2]);

printf(" D:");

print(a[3]);

printf(" E:");

print(a[4]);

printf(" ");

}

}

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

您可能还会对下面的文章感兴趣: