Змагання
Ви повинні написати повну програму, яка займає сім номерів від STDIN і друкує двовимірну історію стільникового автомата (CA) до STDOUT. Це код гольфу.
Форматування вводу Вхід буде складати сім цілих рядків / рядків, розділених комами. Перше число - це номер правила згідно коду Wolfram (стандартна назва для кожного правила). Друга - це початкова конфігурація запуску. Третій і четвертий описують, який шаблон і скільки разів його слід додати зліва від стартової конфігурації. як підкладка. П’ятий і шостий зробити те ж саме для правого боку. Останнє число - це кількість поколінь для запуску моделювання.
Отже, прикладом введення є 90,11,0,4,0,4,5
. Це повинно сказати вашій програмі, що ви використовуєте правило 90 . Він також повинен сказати програмі, що ви хочете, щоб початкова конфігурація була 11
з рядком, 0
доданим 4 рази до обох кінців, тому фактична початкова схема є 0000110000
. Він також говорить вашій програмі запустити це моделювання протягом 5 поколінь.
Вихідна програма Ваша програма повинна надрукувати весь масив комірок кожного покоління (відокремлених новими рядками), щоб вихід був просторово-часовою діаграмою CA. Для кожного покоління стан кожної комірки визначається її станом та станами комірок зліва та справа, відповідно до правила, поданого як вхідне. Моделювання має обернутись по краях. Першим, що надрукується, має бути стартовий масив як gen. 0.
Вхід 90,11,0,4,0,4,5
повинен дати максимально точний наступний результат.
0000110000
0001111000
0011001100
0111111110
1100000011
0110000110
Зауважте, що початковий стан не входить до п’яти поколінь. Також зауважте, що імітація обмотується по краях.
Більше прикладів
вхід:
184,1100,01,2,01,1,4
вихід:
0101110001
1011101000
0111010100
0110101010
0101010101
вхід:
0,1011,1,0,0,1,2
вихід:
10110
00000
00000