引用
Baker, Cooper, Fletcher, Miller, 和Smith住在一动5层公寓的不同楼层。Baker不在顶楼住。Cooper不在底楼住。Fletcher既不在顶楼也不在底楼。Miller住的楼层比Cooper住的高。Smith和Fletcher的楼层不相邻。Fletcher和Cooper的楼层不相邻。问每个人住的楼层。
把B,C,F,M,S代表表示这五个人分别所住的楼层
也就是说B,C,F,M,S只会取1-5的数值
然后把条件重新排列一下
1. Baker不在顶楼:B可能1,2,3,4
2. Cooper不在底楼:C可能2,3,4,5
3. Fletcher既不在顶楼也不在底楼:F可能2,3,4
4. Miller住的楼层比Cooper住的高: M > C
5. Smith和Fletcher的楼层不相邻: |S-F|>1
6. Fletcher和Cooper的楼层不相邻: |F-C|>1
由 条件 4 稍微推导一下,得到间接条件
7. C不可能顶层,M不可能底层
问题的关键在于两个 不相邻条件, 也就是条件5和条件6
由于它们都是指定与 Fletcher 不相关联,而 Fletcher 只能在2,3,4中取值
依次推导即可。
若 F = 2,由不相邻条件5,6,则 S 与 C 只能在4,5中取值; 根据条件7,只能是 C = 4, 则 S = 5 , 而此时, 根据条件4, M > C, 唯一一个比C大的值5已经被 S 占了,矛盾,所以此路不通
若 F = 3, 由不相邻条件5,6,则 S 与 C 只能在1,5中取值; 而综合条件2和7, C不在顶楼也不在底楼,矛盾,此路也不通
只剩下一种可能性, F = 4
然后后面的就好推断了
依次为:C = 2, S = 1, B = 3, M = 5