zoukankan      html  css  js  c++  java
  • 【逻辑题】怪物与鳄鱼

    睡前偶然看到一道题,本觉得昏昏欲睡应该想不清楚的,居然逻辑蛮清晰的,所以特此整理。

    貌似是一道蛮经典的题,作为一个总结吧,其实不难的,不然也不会会在昏昏欲睡的时候想清楚。。

    题目:

    一个怪物流落到一个小岛上,被N条鳄鱼包围,这些鳄鱼饿的发慌且体力相同,任何一条鳄鱼吃掉了怪物,就会耗尽体力,结果会被其他鳄鱼吃掉,并且,吃掉了鳄鱼的鳄鱼也会被剩下的鳄鱼吃掉,以此类推。问:这个怪物安全吗?

    思路:

    如果是1条鳄鱼,怪物不安全,它没有理由不被吃掉哇;

    如果是2条鳄鱼,怪物安全,若A吃了怪物,则B会把A吃掉,同理,若B吃了怪物,则A会把B吃掉,所以AB都不会吃怪物;

    如果是3条鳄鱼,怪物不安全,假设A吃了怪物,则若B吃了A,B会被C吃掉,所以B不会吃A,同理C也不会吃A,所以,吃了怪物的鳄鱼是安全的,也就是怪物是不安全的;

    如果是4条鳄鱼,怪物安全,因为如果A吃了怪物,A会被B吃掉,因为这时CD都不会吃B,否则自己会被吃掉,所以A不会吃怪物;

    如果是5条鳄鱼,怪物不安全,因为A吃了怪物,BCDE都不会吃A……

    所以吧,奇数条鳄鱼,怪物不安全,偶数条鳄鱼,怪物安全。

    其实吧,奇数条的时候,一条鳄鱼吃了怪物,就相当于这条鳄鱼变成了怪物,剩下偶数条鳄鱼,安全状态变为不安全状态,同理,不安全状态也是变一步到安全状态。

    题外话,而且吧,要么只有一条鳄鱼吃了怪物,要么没有鳄鱼吃怪物,所以不会出现刚看到题的时候脑子里浮现出的 一条鳄鱼吃了一条鳄鱼,然后再被另一条鳄鱼吃掉,最后有一条吃了非常多鳄鱼而消化不良了的鳄鱼 的画面…这句有点绕…

    好了,所以说,这种题还是从简单出发递推的想比较好,不然直接N条谁晓得谁会吃了谁…

    睡觉咯~_~

  • 相关阅读:
    appium+python界面滑动
    selenium+python元素定位总结
    PAT甲级1017. Queueing at Bank
    PAT甲级1016. Phone Bills
    PAT甲级1014. Waiting in Line
    PAT甲级1013. Battle Over Cities
    PAT甲级1012. The Best Rank
    PAT甲级1010. Radix
    PAT甲级1003. Emergency
    hihocoder1320 160周 压缩字符串
  • 原文地址:https://www.cnblogs.com/shirley130912/p/3318245.html
Copyright © 2011-2022 走看看