逻辑题:住楼问题

[quote]Baker, Cooper, Fletcher, Miller, 和Smith住在一动5层公寓的不同楼层。Baker不在顶楼住。Cooper不在底楼住。Fletcher既不在顶楼也不在底楼。Miller住的楼层比Cooper住的高。Smith和Fletcher的楼层不相邻。Fletcher和Cooper的楼层不相邻。问每个人住的楼层。[/quote]
把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
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值