Sebuah diagram Muda adalah susunan kotak di baris kiri-dibenarkan dan top-dibenarkan kolom. Untuk setiap kotak, semua ruang di atasnya dan di sebelah kirinya ditempati.
XXXXX
XXX
XXX
X
The Panjang kail dari kotak adalah jumlah kotak ke kanan berturut-turut, serta di bawahnya dalam kolomnya, juga menghitung sendiri sekali. Misalnya, kotak kedua memiliki panjang kait 6:
X****
X*X
X*X
X
Berikut ini semua panjang kaitnya:
86521
532
421
1
Tujuan Anda adalah menghitung produk dari panjang kait, di sini 8*6*5*2*1*5*3*2*4*2*1*1 = 115200
.
(Baca tentang rumus panjang kait jika Anda tertarik mengapa ungkapan ini penting.)
Input: Kumpulan ukuran baris sebagai angka seperti [5,3,3,1]
atau sebagai simbol unary berulang seperti [[1,1,1,1,1], [1,1,1], [1,1,1], [1]]
atau "XXXXX XXX XXX X"
. Anda dapat mengharapkan daftar diurutkan naik atau turun, seperti yang Anda inginkan. Daftar ini akan kosong dan hanya berisi bilangan bulat positif.
Output: Produk dari panjang kait, yang merupakan bilangan bulat positif. Jangan khawatir tentang integer overflow atau runtime.
Built-in yang khusus menangani diagram Young atau partisi integer tidak diperbolehkan.
Kasus uji:
[1] 1
[2] 2
[1, 1] 2
[5] 120
[2, 1] 3
[5, 4, 3, 2, 1] 4465125
[5, 3, 3, 1] 115200
[10, 5] 798336000
{ee::+W%}_q~%z%:+:*
(19 byte) Format input:[[1][1 1 1][1 1 1][1 1 1 1 1]]