Module: 正确的括号顺序 (RSP)


Problem

3 /6


Tilda-omega-lambda-演算

Theory Click to read/hide

在存在多种类型的括号的情况下,一切都会变得更加复杂。我们创建一个堆栈来充当该平衡变量。这是必要的,因为括号不能重叠。当我们遍历一行并遇到左括号时,我们将其压入堆栈。当我们遇到右大括号时,我们会尝试从堆栈中弹出该类型的左大括号。如果堆栈上有不同类型的花括号,则序列无效。如果最后栈非空,序列也无效。 

Problem

Tilda-omega-lambda-calculus 是“British Scientists, Inc”的更具创新性的发展。在函数式编程领域。它与 omega-lambda 演算的区别仅在于能够放置方括号和大括号。大象形支架也有计划,但公司没能改变UNICODE标准。 
输入是一个不超过 10^7 个字符的代字号-欧米茄-拉姆达表达式。您需要打印它的 tilde-izzy 缩减结果,它的工作方式与 omega-lambda 表达式的 izzy 缩减相同,但带有方括号和大括号。

回想一下,izzy-reduction 是对此类表达式的操作之一。执行时会检查表达式中的括号顺序是否正确。这些条款将被忽略。如果顺序正确,则成为gg项,如果不正确,则成为wp项。 
 

 

例子
<头> <日># <正文>
输入 输出
1 主要{izzy[笑](ttt)} gg