Dalam dunia 2D fiksi, satu set instruksi pencetakan 2D untuk objek dapat diwakili oleh daftar bilangan bulat sebagai berikut:
1 4 2 1 1 2 5 3 4
Setiap angka mewakili ketinggian objek pada titik tertentu. Daftar di atas diterjemahkan ke objek berikut saat dicetak:
#
# # #
# ###
## ####
#########
Kami kemudian mengisinya dengan air sebanyak yang kami bisa, menghasilkan ini:
#
#~~~~#~#
#~~~~###
##~~####
#########
Kami mendefinisikan kapasitas objek untuk menjadi unit air yang dapat dipegang benda saat sepenuhnya penuh; dalam hal ini, 11.
Sebenarnya, satu unit air ( ~
) dapat ada di lokasi jika dan hanya jika dikelilingi oleh dua blok padat ( #
) di baris yang sama.
Tantangan
Ambil daftar bilangan bulat positif sebagai input (dalam format apa pun), dan keluarkan kapasitas objek yang dicetak saat daftar digunakan sebagai instruksi.
Anda dapat menganggap daftar berisi setidaknya satu elemen dan semua elemen antara 1 dan 255.
Uji Kasus
+-----------------+--------+
| 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 |
+-----------------+--------+