| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付学习型 ASP/PHP/ASP.NET 主机 30元/年
高端软件开发 = 年薪十万不是梦   
共有 59 人关注过本帖
标题:[分享]黑白问题
收藏  订阅  推荐  打印

[分享]黑白问题

/*有A,B,C,D,E,五人,每人额头上都帖着一张或黑或白的纸。五人对坐,每人都能看见别人的,
但看不见自己的。而且黑的撒谎,白的诚实。
A说:“我看见有三个人的是白纸,一人是黑纸”。
B说:“我看见四个人的都是黑纸”。
C说:“我看见有一个人的是白纸,三个人是黑纸”。
D说:“我看见四个人的都是白纸”。
E什么也没有说。*/
#include <stdio.h>
main()
{
int a,b,c,d,e; //黑色为0,白色为1
for(a=0;a<=1;a++) //5个人头上帖纸的全部可能
for(b=0;b<=1;b++)
for(c=0;c<=1;c++)
for(d=0;d<=1;d++)
for(e=0;e<=1;e++)
if((a&&b+c+d+e==3||!a&&b+c+d+e!=3)
&&(b&&a+c+d+e==0||!b&&a+c+d+e!=0)
&&(c&&a+b+d+e==1||!c&&a+b+d+e!=1)
&&(d&&a+b+c+e==4||!d&&a+b+c+e!=4))
{
printf("A is %s:\n",a?"White":"Black");
printf("B is %s:\n",b?"White":"Black");
printf("C is %s:\n",c?"White":"Black");
printf("D is %s:\n",d?"White":"Black");
printf("E is %s:\n",e?"White":"Black");
}
}

TOP

共有 58 人关注过本帖
发新话题
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

编程中国 版权所有,并保留所有权利。鲁ICP备08000592号
Powered by Discuz, Processed in 0.057253 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved