Головоломка з краплями#3400

Головоломка з краплями

8 секунд
64 мегабайти
Складна

Браузерна гра-головоломка під назвою "Bubble Puzzle" у даний час досить популярна в Інтернеті.

Гра ведеться на дошці 4 \times 4, спочатку у її клітинках знаходиться декілька бульбашок. Стан кожної бульбашки характеризується натуральним числом, воно змінюється, коли бульбашка збуджується. Спричинити це можна, клацнувши по ній, після чого її стан збільшується на . Ви можете клацнути і на порожній клітинці. Тоді у цій клітинці з'явиться бульбашка, стан якої дорівнює .

Коли бульбашка досягає стану або більше, вона вибухає і зникає, а маленькі водяні краплі починають розлітатись у чотирьох напрямках (вгору, вниз, ліворуч та праворуч). Швидкість руху цих крапель становить одну клітинку за секунду. У момент вибуху краплини знаходяться у тій же клітинці, де до цього була бульбашка, через секунду вони будуть знаходитись у сусідніх клітинках і так далі.

Маленька крапля, що летить, зникає або коли вона врізається у бульбашку, або коли вилітає за межі дошки. Коли крапля потрапляє у бульбашку, то її стан збільшується на . Аналогічно, якщо у бульбашку одночасно врізається декілька водяних крапель, то її стан збільшується на їх кількість. Зазначимо, що краплі у польоті не зіштовхуються одна з одною.

Як показано на рисунку, краплі, отримані у результаті вибуху, можуть спричиняти й інші вибухи. Іншими словами, може виникнути ланцюгова бульбашкова реакція. Клікати (клацати) по клітинках заборонено, доки існує хоча б одна крапля, яка летить (тобто Вам слід чекати, доки завершиться процес зміни станів бульбашок). У головоломці Вам слід підірвати усі бульбашки і очистити усі клітинки якомога швидше.

У задачі потрібно обчислити найменшу кількість кліків, достатніх для виконання задачі.

Вхідні дані

Вхідні дані складаються з рядків, кожен з яких містить невід'ємних цілих числа, менших за . Кожне ціле число описує початковий стан бульбашки на клітинці дошки. вказує на те, що клітинка порожня.

Вихідні дані

Вивести найменшу кількість кліків, достатніх для вибуху усіх бульбашок на дошці. Якщо відповідь більша ніж , то слід вивести .

Приклади

Приклад 1

Loading
Loading