Biorąc pod uwagę, w jakikolwiek sposób i porządek,
wymiary (w dowolnej kolejności)
prawdopodobieństwo (w dowolnym formacie)
liczba iteracji (możesz wybrać, czy liczyć stan początkowy, czy nie)
wykonaj jedną z następujących czynności:
animować lub
wypisuje każdy krok lub
zwraca listę stanów
wypełnione przestrzenią niebo o tych wymiarach.
Dla każdej iteracji:
każda postać nieba ma podane prawdopodobieństwo zostania
*
Osiem otaczających postaci
*
staje się
\
|
/
-
-
/
|
\
, jeśli nie stają się gwiazdami,- jeśli znak jest w zasięgu dwóch
*
s, uczyń go anX
Przykład
Niebo 7 × 22 (klatka tylko dla przejrzystości - nie wysyłaj klatki)
┌──────────────────────┐
│ │
│ │
│ │
│ │
│ │
│ │
│ │
└──────────────────────┘
z prawdopodobieństwem 1% może się stać
┌──────────────────────┐
│ * │
│ │
│ │
│ │
│ │
│ * │
│ │
└──────────────────────┘
i następny krok
┌──────────────────────┐
│ - - * │
│ /|\ │
│ * │
│ │
│ \|/ │
│ - - │
│ /|\ │
└──────────────────────┘
i wtedy
┌──────────────────────┐
│ - - │
│ /|\ \|/ │
│ - - │
│ /|\ │
│ │
│ * * │
│ │
└──────────────────────┘
i
┌──────────────────────┐
│ │
│ │
│ │
│ │
│ \|X|/ │
│ - X - │
│ /|X|\ * │
└──────────────────────┘
i tak dalej
┌──────────────────────┐
│ │
│ │
│ │
│ * │
│ │
│ \|/│
│ - -│
└──────────────────────┘