返回题库

笼中狮子

lions in a cage

专题
Brainteaser / 脑筋急转弯
难度
L2

题目详情

笼子里有 nn 头狮子。有人扔进来一块肉。每头狮子要么把整块肉吃掉,要么完全不吃。

如果某头狮子吃了肉,它会立刻睡着,并在其他狮子眼里变成“一块肉”(可以被吃掉)。

问:最后会发生什么?

英文原题

There are nn lions in a cage. A piece of meat is thrown into the cage. A lion can either eat the whole piece of meat or none of it. If it eats the meat, it falls asleep and becomes to the other lions a piece of meat. What happens?

解析

假设狮子都足够理性:只有在“吃了不会让自己被其他狮子吃掉”时才会吃。

用归纳:

  • n=1n=1:唯一的狮子吃掉肉,安全。
  • n=2n=2:若其中一头吃肉就会睡着,另一头会把它吃掉,因此没人敢吃。
  • 假设对 n1n-1 成立。

当有 nn 头狮子时,若某头狮子吃肉睡着,那么笼中还剩 n1n-1 头清醒狮子面对“一块肉”(睡着的那头)。根据归纳假设:

  • n1n-1 为奇数(即 nn 为偶数),会有狮子去吃这块“肉”,于是最初吃肉那头会被吃掉,因此没有狮子敢先吃;
  • n1n-1 为偶数(即 nn 为奇数),不会有狮子去吃这块“肉”,因此最初吃肉那头是安全的,于是会有人吃。

结论:n 为奇数时会有狮子吃;n 为偶数时无人吃。\boxed{n\text{ 为奇数时会有狮子吃;}n\text{ 为偶数时无人吃。}}


英文解析

Assuming the lions are sufficiently rational: they will eat only if eating will not leave them vulnerable to being eaten by another lion.

Using induction:

-n=1n=1: The single lion eats the meat and remains safe.
-n=2n=2: If one lion eats the meat, it will fall asleep; the other lion will then eat it, so no lion dares to eat.

  • Assume the statement holds for n1n-1.

When there are nn lions, if one lion eats the meat and falls asleep, the cage is left with n1n-1 awake lions facing "a piece of meat" (the sleeping one). According to the inductive hypothesis:

  • If n1n-1 is odd (i.e., nn is even), a lion will eat this "piece of meat," so the lion that initially ate will be eaten; therefore, no lion dares to eat first.
  • If n1n-1 is even (i.e., nn is odd), no lion will eat this "piece of meat," so the lion that initially ate remains safe; therefore, someone will eat.

Conclusion: Lions will eat when n is odd; no one will eat when n is even.\boxed{\text{Lions will eat when } n \text{ is odd; no one will eat when } n \text{ is even.}}