2024-07-11
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Baidu Encyclopedian mukaan Game of Life, jota kutsutaan nimellä Life, on brittiläisen matemaatikko John Horton Conwayn vuonna 1970 keksimä soluautomaatti.
Kun paneeli sisältää m × n ruudukkoa, jokaista ruudukkoa voidaan pitää soluna. Jokaisella solulla on alkutila: 1 elävälle solulle (elävä) tai 0 kuolleelle solulle (kuollut). Jokainen solu ja sen kahdeksan vierekkäistä solua (vaakasuunnassa, pystysuunnassa, diagonaalisesti) noudattavat seuraavia neljää selviytymislakia:
Jos elävien solujen lukumäärä elävää solua ympäröivässä kahdeksassa paikassa on pienempi kuin kaksi, kyseisessä paikassa oleva elävä solu kuolee;
Jos elävän solun ympärillä on kaksi tai kolme elävää solua kahdeksassa paikassa, elävä solu kyseisessä paikassa on edelleen elossa;
Jos elävän solun ympärillä on enemmän kuin kolme elävää solua kahdeksassa paikassa, kyseisessä paikassa oleva elävä solu kuolee;
Jos kuolleen solun ympärillä on täsmälleen kolme elävää solua, kuollut solu tuossa paikassa herätetään henkiin;
Seuraava tila muodostetaan soveltamalla yllä olevia sääntöjä samanaikaisesti jokaiseen nykytilan soluun, jossa solut syntyvät ja kuolevat samanaikaisesti. Näyttää mxn-ruudukkopaneelin nykyisen tilan ja palauttaa seuraavan tilan.
Esimerkki 1:
Syöttö: board = [[0,1,0],[0,0,1],[1,1,1],[0,0,0]]
Tulos: [[0,0,0],[1,0,1],[0,1,1],[0,1,0]]
Esimerkki 2:
Syöttö: board = [[1,1],[1,0]]
Lähtö: [[1,1],[1,1]]
vihje:
m == lauta.pituus
n == lauta[i].pituus
1