Нужна помощь в понимании игры жизни Конвея - PullRequest
1 голос
/ 17 января 2012

Я пытаюсь написать код для «Игры жизни» Конвея, чтобы определить ближайший следующий шаблон для данного шаблона ячеек, но я не уверен, действительно ли я понимаю эти шаги. Так, например, рассмотрим образец жабы ниже. Ячейки, помеченные х, живы, а помеченные - мертвы.

-XXX
XXX-

Выше следует транспонировать в следующее

--x-
x--x
x--x
-x--

Правила, которые мы знаем:

  1. Умирает живая клетка с менее чем 2 или более чем 3 соседями
  2. Живая клетка с ровно 2 или 3 соседями выживает
  3. Мертвая клетка с ровно 3 соседями оживает.

Итак, первая ячейка на входе c [0,0] - и у нее есть 3 живых соседа (по одному по горизонтали, вертикали и диагонали), поэтому она должна быть активной на выходе, но это не так. Может кто-нибудь объяснить, пожалуйста?

Ответы [ 3 ]

3 голосов
/ 17 января 2012

Средние две строки в вашем выводе - это те, которые соответствуют двум строкам в вашем вводе.Верхняя левая ячейка на входе соответствует второму крайнему левому ряду на выходе, и, как вы можете видеть, она жива.

0 голосов
/ 17 января 2012

Ну, это так. Ваш двухстрочный вход - это средняя часть четырехстрочного выхода. Я думаю, что когда вы посмотрите на это сейчас, вы все поймете.

Вы смотрели хотя бы на википедию ?

0 голосов
/ 17 января 2012

Жив на выходе. Это прямо здесь:

- х-
х - х
х - х
-x -

x в первой строке на выше первой строки в первом выводе. Правила жизни принимают неограниченную плоскость. Если вы хотите вызвать верхний ряд первого выхода 0, вы можете, но тогда верхний ряд второго вывода -1.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...