El desafío es encontrar la implementación más corta del juego de la vida en 3D ( ejemplo ). Estas son las reglas:
Las células (en este caso, cubos) con solo 1 o menos vecinos mueren, como por soledad.
Si exactamente 5 celdas rodean una celda vacía, se reproducen y la llenan.
Si una celda tiene 8 o más vecinos, muere por hacinamiento.
Que sea al menos 10x10x10, donde las capas se emiten individualmente de esta manera:
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 X 0 0 X 0 0 0 0 0
0 0 X X X 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
Por supuesto, también se acepta una simulación 3D gráfica.
La posición inicial puede estar codificada pero debe funcionar si se cambia a cualquier posición inicial. Debe poder calcular cualquier cantidad de generaciones, y el usuario debe poder solicitar manualmente la próxima generación.
¡El código más corto en caracteres gana!
Hice mi propia implementación de esto para cualquier tamaño (cubo): http://jensrenders.site88.net/life3D.htm. Puedes usar esto para probar y puedes basar tu código en el mío, aunque no lo comenté. .