Module: Urutan Kurungan Betul (RSP)


Problem

3 /6


Tilda-omega-lambda-calculus

Theory Click to read/hide

Dalam kes kehadiran kurungan beberapa jenis, semuanya menjadi sedikit lebih rumit. Kami mencipta tindanan untuk bertindak sebagai pembolehubah keseimbangan itu. Ini perlu kerana kurungan tidak boleh bertindih. Apabila kami berjalan melalui garisan dan menemui kurungan pembukaan, kami menolaknya ke atas timbunan. Apabila kami menemui pendakap penutup, kami cuba mengeluarkan pendakap bukaan jenis itu daripada timbunan. Jika pendakap daripada jenis yang berbeza berada pada tindanan, jujukan itu tidak sah. Jika tindanan tidak kosong pada penghujungnya, jujukan itu juga tidak sah. 

Problem

Tilda-omega-lambda-calculus ialah pembangunan yang lebih inovatif bagi "British Scientists, Inc" dalam bidang pengaturcaraan berfungsi. Perbezaannya daripada kalkulus omega-lambda hanya dalam keupayaan untuk meletakkan kurungan segi empat sama dan kerinting. Kurungan berbentuk gajah juga telah dirancang, tetapi syarikat gagal mengubah standard UNICODE. 
Input ialah ungkapan tilde-omega-lambda tidak lebih daripada 10^7 aksara. Anda perlu mencetak hasil pengurangan tilde-izzynya, yang berfungsi dengan cara yang sama seperti pengurangan izzy untuk ekspresi omega-lambda, tetapi dengan kurungan segi empat sama dan kerinting.

Ingat bahawa  izzy-reduction ialah salah satu operasi pada ungkapan tersebut. Apabila ia dilaksanakan, ia diperiksa sama ada urutan kurungan dalam ungkapan itu betul. Terma diabaikan. Jika urutannya betul, ia menjadi istilah gg, jika tidak, ia menjadi istilah wp. 
 

 

Contoh
# Input Output
1 utama{izzy[lol](ttt)} gg