查看: 1212|回复: 2

[逻辑推理] 推理塔的位置

转载  已解决  简洁模式
头像被屏蔽
发表于 2018-10-27 20:08:19 | 发自安卓客户端
下面的圈圈里分别建造了6座高塔(1-6)
现在有五个人根据自己看到的情况,都说了一句话而且他们看不见高塔正后面矮的塔。
根据你的推理,1-6号塔分别在对应的什么地方
本帖子中包含更多图片或附件资源

您需要 登录 才可以下载或查看,没有帐号?加入学院

此回答在 2018-10-31 16:28 被选定为谜题答案,获得破案经验 2

发表于 2018-10-27 20:37:42 | 2018-10-28 00:34编辑 发帖际遇
536142

既然被选了....就来些过程吧........
怕看不懂的直接翻到最下部分.

先上个不动脑的程序:
  1. p=lambda *l:sum((i[0]<i[1])+1 for i in l)
  2. s={1,2,3,4,5,6}
  3. for a in s:
  4. for b in s-{a}:
  5.   for c in s-{a,b}:
  6.    for d in s-{a,b,c}:
  7.     for e in s-{a,b,c,d}:
  8.      for f in s-{a,b,c,d,e}:
  9.       if(3 in{a,b,c}or a<d==3 or b<e==3 or c<f==3)and(a>b==4 or c>e==4 or d>f==4)and(e>b and c>a and f>d)and(p((b,a),(c,d),(e,f))==4)and(p((d,a),(c,b),(f,e))==5):
  10.        print a,b,c,d,e,f
  11. # 5 3 6 1 4 2
复制代码

再上个你们肯定认为繁琐的全然不动脑的手算..
反正也没人看的所以符号就随便了.
真有人看的话看不懂的别问我.


左上 = ∨(A3,B3,C3,A12D3,B12E3,C12F3)
右上 = ∨(A56B4,C56E4,D56F4)
左上∧右上 = ∨(C3A56B4,C12F3A56B4,A3C56E4,B3C56E4,A12D3C56E4,A3D56F4,B3D56F4,C3D56F4,B12E3D56F4)

下 = ∧(C>A,E>B,F>D)
左上∧右上∧下 = ∨(A3C56E4,B3C56E4,A12D3C56E4) ∧ 下
= ∨(A3(CF56)E4(BD12),(AD12)B3(CF56)E4,B3C6E4A5D1F2,(AB12)D3(CF56)E4)

右 ⇒ {5,6}⊈{C,D,F}
左上∧右上∧下∧右 ⇒ B3C6E4A5D1F2

左边的条件都还没提到呢..已经唯一解了..
最后验证下536142满足所有条件.


最后来一个大家看得懂的吧..
由下人知F>D,A<C,由右上人知4不在DF中,故B=4<A或E=4<C ⇒ C>4,4∈{B,E}
若B=4,由下人知E>B=4,与A>4,C>4矛盾;故C>E=4>B.
由右下知F<E=4,D<A.
故B,F∈{1,2,3},D<A<C∈{5,6},E=4 ⇒ D<=A-1<=C-2<=6-2=4=E ⇒ {B,D,F}={1,2,3} ⇒ A=5,C=6
由左上人知F≠3,又F>D,故D<=F-1<2-1=1 ⇒ D=1,F=2,B=3
综上,(A,B,C,D,E,F)=(5,3,6,1,4,2).
验证下满足条件就行了.
登录帐号可查看完整回帖内容
尚未登录
您需要登录后才可以回帖 登录 | 加入学院