Diberikan string yang hanya berisi 0's 1's, 2's dan kurung, output pohon tata bahasa string.
A 2membutuhkan 2 argumen - satu ke kiri dan satu ke kanan
A 1membutuhkan argumen tunggal - ke kiri atau kanan
A 0tidak memerlukan argumen apa pun dan merupakan kasus dasar
Sepasang tanda kurung dihitung sebagai satu argumen dan isi tanda kurung dievaluasi secara terpisah dari sisa string. Kurung bersarang dimungkinkan
String input akan selalu menjadi pohon lengkap tanpa karakter yang jatuh. String juga hanya akan memiliki satu solusi yang benar. Perhatikan bahwa fungsinya komutatif dan pengaturan argumen apa pun untuk2 akan dapat diterima. Anda tidak harus menangani input yang tidak sesuai dengan persyaratan ini.
Format tata bahasa output akan dalam bentuk function(arguments)secara rekursif
Uji kasus
0 --> 0
01 --> 1(0)
020 --> 2(0,0)
101 --> 1(1(0))
0120 --> 2(1(0),0)
0120210 --> 2(1(0),2(0,1(0)))
01210 --> 2(1(0),1(0))
(020)210 --> 2(2(0,0),1(0))
((020)20)1 --> 1(2(0,2(0,0)))
0120210juga tidak dapat diuraikan seperti di 2[4](2[2](1[1](0[0]), 0[3]), 1[5](0[6]))mana angka tanda kurung menunjukkan posisi dalam string.
101juga ambigu.
10201input yang valid?