Змагання
Розглянемо сітку 3x3 King, як показано на наступній графіці ASCII:
A--B--C
|\/|\/|
|/\|/\|
D--E--F
|\/|\/|
|/\|/\|
G--H--I
Вам вводиться як цілий список цілих чисел довжиною 9, що представляють собою маркування вузлів. Наприклад, вхід [0,1,1,2,1,0,5,5,1]
представляє таке маркування:
0--1--1
|\/|\/|
|/\|/\|
2--1--0
|\/|\/|
|/\|/\|
5--5--1
Ваш вихід - це набір цілих чисел на вході, які утворюють пов'язані набори вузлів. Більш виразно, висновок повинен містити ціле число n
з вхідного сигналу, якщо і лише тоді, коли n
підключений набір вузлів з міткою . У цьому прикладі прийнятним є вихід [1,2,5]
, оскільки два 0
s не з'єднані. Виграє найменший байт.
Детальні правила
- Ви можете вибрати фіксовану впорядкованість для вузлів у списку вводу, і ви повинні вказати це у своїй відповіді. У порядку EFBDHCAGI зазначене вище маркування буде надано як
[1,0,1,2,5,1,0,5,1]
. - Ви можете написати або повну програму, або функцію. В останньому випадку висновок може бути набором цілих чисел, якщо ваша мова підтримує їх.
- Список вихідних даних може містити дублікати, але його довжина не повинна перевищувати 9.
- Стандартні лазівки заборонені.
Тестові справи
Вони мають одноцифрові номери, вирівняні до сітки; підганяйте їх до обраного замовлення.
011
210 => 1 2 5
551
010
202 => 0 2
221
110
123 => 0 2 3
221
111
111 => 1
111
111
141 => 1 4
111