Обмен технологиями

【LeetCode】Игра жизни

2024-07-11

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina


1. Название

Согласно энциклопедии Baidu, Игра Жизни, называемая Жизнью, представляет собой клеточный автомат, изобретенный британским математиком Джоном Хортоном Конвеем в 1970 году.

Учитывая панель, содержащую сетки m × n, каждую сетку можно рассматривать как ячейку. Каждая ячейка имеет начальное состояние: 1 для живой клетки (живая) или 0 для мертвой клетки (мертвая). Каждая клетка и восемь соседних с ней клеток (по горизонтали, вертикали, диагонали) подчиняются следующим четырем законам выживания:

Если количество живых клеток в восьми положениях, окружающих живую клетку, меньше двух, живая клетка в этом положении погибнет;
Если вокруг живой клетки есть две или три живые клетки в восьми местах, живая клетка в этом месте все еще жива;
Если вокруг живой клетки находится более трех живых клеток в восьми позициях, живая клетка в этом положении умрет;
Если вокруг мертвой клетки ровно три живых клетки, мертвая клетка в этом месте воскреснет;
Следующее состояние формируется путем одновременного применения вышеуказанных правил к каждой клетке в текущем состоянии, где клетки рождаются и умирают одновременно. Предоставляет текущее состояние панели сетки mxn и возвращает следующее состояние.

Пример 1:
Вставьте сюда описание изображения

Ввод: доска = [[0,1,0],[0,0,1],[1,1,1],[0,0,0]]
Вывод: [[0,0,0],[1,0,1],[0,1,1],[0,1,0]]
Пример 2:
Вставьте сюда описание изображения

Ввод: доска = [[1,1],[1,0]]
Вывод: [[1,1],[1,1]]

намекать:

м == длина.доски
n == доска[i].длина
1