Ця проблема натхненна цим додатком .
Це набагато простіший варіант цього виклику . Це завдання - код-гольф , а інший - найшвидший-код .
Вам буде надана квадратна вхідна сітка розмірами 6 на 6, яка розділена на 6 областей, де комірки кожної області мають унікальний ідентифікатор (я буду використовувати тут тексти з малої літери af у тексті, але ви можете вибрати все, що завгодно, наприклад, цілі числа 1-6 ).
Вхід може виглядати приблизно так (необов'язковий формат введення):
aabbbb
aabbbb
aaccbb
acccdb
ecccdb
eeefff
Або простіше уявити:
Виклик:
Ви повинні розмістити 6 дерев у цьому парку за такими правилами:
- На стовпчик повинно бути рівно 1 дерево та 1 дерево на ряд
- Усі області мають рівно 1 дерево.
- Жодне дерево не може примикати до іншого дерева, вертикально, горизонтально чи по діагоналі
Рішення для макета вище:
Примітка. На кожну головоломку існує лише одне рішення
Додаткові правила:
- Формати введення та виведення необов’язкові
- Вихідним може бути, наприклад, список індексів, сітка з 1/0, яка вказує, чи є дерево в цьому положенні, або модифікована версія вводу, де вказані дерева.
- Час виконання повинно бути детермінованим
- Програма повинна закінчитися протягом 1 хвилини на розумному сучасному ноутбуці
- Брауні вказує, якщо ви не нагнітаєте сили!
Тестові приклади:
aabbbb
aabbbb
aaccbb
acccdb
ecccdb
eeefff
---
aAbbbb
aabbbB
aaCcbb
acccDb
Ecccdb
eeeFff
----------
aabccc
aacccc
aaddce
aeeeee
aeeefe
eeeeee
---
aaBccc
aacccC
aadDce
Aeeeee
aeeeFe
eEeeee
----------
aaaabb
aacbbb
aadddb
addeef
ddddee
dddeee
---
aaaaBb
aaCbbb
Aadddb
addeeF
dDddee
dddEee
----------
abbbcd
abebcd
addddd
dddddd
effdff
eeffff
---
abBbcd
abebCd
Addddd
dddDdd
effdfF
eEffff
Ті ж тестові приклади у форматі, який трохи простіше розібратися:
Test case 1:
[1,1,2,2,2,2;1,1,2,2,2,2;1,1,3,3,2,2;1,3,3,3,4,2;5,3,3,3,4,2;5,5,5,6,6,6]
Test case 2:
[1,1,2,3,3,3;1,1,3,3,3,3;1,1,4,4,3,5;1,5,5,5,5,5;1,5,5,5,6,5;5,5,5,5,5,5]
Test case 3:
[1,1,1,1,2,2;1,1,3,2,2,2;1,1,4,4,4,2;1,4,4,5,5,6;4,4,4,4,5,5;4,4,4,5,5,5]
Test case 4:
[1,2,2,2,3,4;1,2,5,2,3,4;1,4,4,4,4,4;4,4,4,4,4,4;5,6,6,4,6,6;5,5,6,6,6,6]