博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
100c之54: 说谎族,诚实族和两面族
阅读量:6419 次
发布时间:2019-06-23

本文共 1313 字,大约阅读时间需要 4 分钟。

Table of Contents

问题

两面族是岛上除了说谎族和诚实族外的新民族,他们的特点是说话真假交替。一句谎话接着一句真话或者一句真话接着一句谎话。但是第一句是真还是假难以讲清楚。 谜语博士遇到了三个人,他问左边的人:中间是什么族?左边的回答:诚实族。他问中间:你是什么民族?中间的回答:两面族。他又问右边:中间的人到底是什么民族?右边的回答: 说谎族。请问这三个到底是什么民族的。

分析

每个人都有三个状态。穷举加上约束条件就ok啦。

程序

1:  /** 2:   * @file   054c.c 3:   * @author Chaolong Zhang 
4: * @date Sun Jul 14 13:23:28 2013 5: * 6: * @brief 两面族是岛上除了说谎族和诚实族外的新民族,他们的特点是说话真假交替。一句谎话接着一句真话或者一句真话接着一句谎话。但是第一句是真还是假难以讲清楚。 7: * 谜语博士遇到了三个人,他问左边的人:中间是什么族?左边的回答:诚实族。他问中间:你是什么民族?中间的回答:两面族。他又问右边:中间的人到底是什么民族?右边的回答: 8: * 说谎族。请问这三个到底是什么民族的。 9: */10: 11: #include
12: #define N 3 /// 0 stands for lying; 1 for being honest; 2 for double-dealer 13: 14: int main(int argc, char *argv[])15: {16: int a,b,c;17: 18: for (a=0; a < N; ++a){19: for (b=0; b < N; ++b){20: for (c=0; c < N; ++c){21: if ( ( ( a==0 )&&( b!=1 ) || ( a==1 )&&( b==1 ) || ( a==2 )) && 22: ( b!=1 ) &&23: ( ( c==0 )&&( b!=0 ) || ( c==1 )&&( b==0 ) || ( c==2 ))){24: printf ("%d,%d,%d\n",a,b,c);25: }26: }27: }28: }29: return 0;30: }31:

结果

0,0,10,0,20,2,00,2,22,0,12,0,22,2,02,2,2

转载于:https://www.cnblogs.com/chaolong/p/3189423.html

你可能感兴趣的文章
3. Spring Boot Servlet
查看>>
3n+1问题
查看>>
[FPGA] DE0_NANO eeprom i2C控制程式
查看>>
java 反射之获取泛型对象的所有字段与对应的值(包括父类的)
查看>>
js中修改标签的hidden属性
查看>>
2012年流行的安卓手机浏览器
查看>>
树莓派摄像头直播程序,非常希望有贡献者一起玩
查看>>
mysql 用drop和delete方法删除用户的区别(草稿)
查看>>
vs code插件
查看>>
less学习笔记四
查看>>
如何在Ubuntu上安装LAMP服务器系统?
查看>>
Codeforces Round #547 (Div. 3) A.Game 23
查看>>
《转》iOS 平台 Cocos2d-x 项目接入新浪微博 SDK 的坑
查看>>
代写CSSE2002/7023作业、代做Java程序作业、代写Java编程作业、帮写Java实验作业、Java课程设计作业代做...
查看>>
匈牙利算法
查看>>
框架-弹出选择框(传编号名称)
查看>>
html的基本数据类型(数字,字符串, 列表, 字典)
查看>>
菜鸟机器学习散点总结(二)
查看>>
ant design 中的 Select 组件常规写法
查看>>
弹窗 组件 封装
查看>>