#A378. 永恒的生命游戏

永恒的生命游戏

题目背景

2020年4月11日,英国数学家 ​约翰·霍顿·康威​(John Horton Conway)因为新型冠状病毒肺炎不幸逝世。他在群论、数论、代数、几何拓扑、理论物理、组合博弈论和几何等领域,都做出了重大贡献。他的离去是人类文明的损失。他最著名的发明就是​生命游戏​(Conway’s Game of Life)。

题目描述

生命游戏定义了一种细胞自动机。该自动机由一个网格组成,每个方格代表一个细胞,细胞有两种状态:生(黑色表示)或死(白色表示)。每个细胞在下个时刻的生死取决于当前时刻相邻的八个细胞的状态,具体规则如下:

  • 如果某个原本存活的细胞,周围恰好有 2 个 或 3 个活的细胞,那么在下个时刻,它会保持存活;
  • 如果某个原本存活的细胞,周围活的细胞小于 2 个或多于 3 个,那么它在下个时刻,会因孤独或拥挤而死亡;
  • 如果某个原本死亡的细胞,周围恰好有 3 个活的细胞,那么在下个时刻,它会变成活的细胞。

利用这些简单的规则,生命游戏将从一个时刻迭代到下一个时刻,呈现不同的演化形态。

第一种是稳定状态,细胞自动机从诞生起,布局稳定,没有任何变化。如下图所示

image

第二种是振荡状态,细胞自动机反复在几种状态间振荡变化,如下图所示

image

第三种是消亡状态,细胞自动机逐渐萎缩,如下图所示

image

细胞自动机还有更多有趣的状态,比如繁衍或者移动,此处就不展开了。

给定一个规模为 n×m 的细胞自动机,请判定它是否处于稳定状态。

输入格式:

  1. 第一行包含两个整数 nm,分别表示矩阵的行数和列数。
  2. 接下来是一个 n x m 的矩阵,每个元素表示一个细胞的状态:
    • * 表示细胞存活。
    • . 表示细胞死亡。

输出格式:

  • 如果细胞自动形成稳定状态(称为“Still life”),输出 "Still life"。
  • 否则,输出 "Other"。
4 4
....
.**.
.**.
....
Still life
3 4
.**.
*..*
.**.
Still life
2 3
...
.*.
Other

数据范围:

  • 1 ≤ n, m ≤ 100。