九连环的问题及撒谎问题求解
作者:互联网
一.九连环
思路:
设置两个函数
f(i,1)函数代表,当前局面为[0,i]为空,装上单环i
f(i,0)函数代表,当前局面为[0,i-1]为空,i存在,卸下单环i,
digui(i,1),表示[0,i]为空,[0,i]全装上
digui(i,0),表示[0,i]全都存在,[0,i]全卸下来;
二.撒谎问题
某班中的一位同学做了好事不留名,表扬信来了之后,班主任问A,B,C,D,E,F 六位同学是谁做的好事,六位的回答如下:
A说:不是我。
B说:是C。
C说:是D。
D说:C胡说。
E说:不是C就是E
F说:即不是D也不是E
如果N个人说的是真话,则根据这些信息,找出可能做了好事的人。
输入格式:
输入N,N个人可能说的是真话
输出格式:
有可能做好事的同学(A-F),如果有多位同学有可能做好事,则同学名称按字典序全部输出。同学名之间用" or "间隔。 如果无法找出,输出"Error"。
输入样例:
2
输出样例:
在这里给出相应的输出。例如:
A or D
思路:假设某个人做好事 , 带进去看是否是N个人说的是真话,如果是则这个人可能是做好事的;
标签:同学,输出,真话,求解,做好事,单环,为空,九连环,撒谎 来源: https://www.cnblogs.com/sikonghuan/p/15489578.html