甲说,王小红为班长,李强为生活委员。
乙说,丁金生为班长,王小红为生活委员。
丙说,李强为班长,王小红为学习委员。
甲乙丙恰好都猜对了一半,问他们任何职
代码实现
ls =[0,1]
#p :王小红为班长q:李强为生活委员r :丁金生为班长s:王小红为生活委员t:李强为班长m:王小红为学习委员
for p in ls:
for q in ls:
for r in ls:
for s in ls:
for t in ls:
for m in ls:
if (p==1 and r==1):
continue
if (p==1 and s==1):
continue
if (p==1 and m==1):
continue
if (q==1 and s==1):
continue
if (q==1 and t==1):
continue
if (p==1 and t==1):
continue
a=(p and (not q))or((not p)and q)
b=(r and (not s))or((not r)and s)
c=(t and (not m))or((not t)and m)
if (a and b and c)==1:
print("{},{},{},{},{},{}".format(p,q,r,s,t,m))
结果:
0,1,1,0,0,1