У вигаданому 2D світі набір 2D інструкцій друку для об'єкта може бути представлений переліком цілих чисел таким чином:
1 4 2 1 1 2 5 3 4
Кожне число представляє висоту об'єкта в цій конкретній точці. Вищевказаний список переводиться на наступний об'єкт при друкуванні:
#
# # #
# ###
## ####
#########
Потім ми наповнюємо її якомога більшою кількістю води, в результаті чого:
#
#~~~~#~#
#~~~~###
##~~####
#########
Ми визначаємо ємність об'єкта бути одиницями води, яку об'єкт може вмістити, коли він повністю заповнений; у цьому випадку 11.
Строго кажучи, одиниця води ( ~
) може існувати в місці, якщо і лише тоді, коли вона оточена двома суцільними блоками ( #
) в одному ряду.
Виклик
Візьміть список позитивних цілих чисел як вхідні дані (у будь-якому форматі) та виведіть ємність об'єкта, надрукованого, коли список використовується як інструкції.
Можна припустити, що список містить щонайменше один елемент, а всі елементи знаходяться між 1 і 255.
Випробування
+-----------------+--------+
| Input | Output |
+-----------------+--------+
| 1 | 0 |
| 1 3 255 1 | 0 |
| 6 2 1 1 2 6 | 18 |
| 2 1 3 1 5 1 7 1 | 7 |
| 2 1 3 1 7 1 7 1 | 9 |
| 5 2 1 3 1 2 5 | 16 |
| 80 80 67 71 | 4 |
+-----------------+--------+