#1882. Problem B. 后继
Problem B. 后继
Description
我们知道自然数集是 0 和正整数构成的数字的集合,然而这个定义并不美丽,皮亚诺算数公理用这 样的方式描述自然数集:
- zero 是自然数。
- 任何自然数 n 都有一个自然数 succ(n) 作为他的后继。
- zero 不是任何数的后继。
- 后继函数是单的,即如果 succ(n) = succ(m),那么 n = m。
- zero, succ(zero), succ(succ(zero)), succ(succ(succ(zero))). . . 可以取遍集合内所有元素。 不难发现上面的 zero 就是 0,succ(n) 就是 n + 1 的意思。于是我们知道 succ(zero) 其实就是 1, succ(succ(zero)) 其实就是 2。 接下来我们可以用这种后继的语言定义自然数的加法:
- plus(n, zero) = n。
- plus(n, succ(m)) = succ(plus(n, m))。 这其实就是说,n + 0 = n 和 n + (m + 1) = (n + m) + 1。(为了写起来比较好看,我们经常在逗号后面加上一个空格) 于是我们的问题是,给定一个后继形式的加法表达式,请你算出结果,你只需要用我们通常使用的方法输出一个自然数。
Format
Input
一行一个字符串 S,保证字符串长度不超过 100000。
Output
一行一个自然数,表示表达式的结果。
Samples
plus(zero, zero)
plus(plus(succ(zero), succ(zero)),succ(succ(zero)))
succ(succ(succ(succ(succ(zero)))))
0
4
5
Limitation
对于 40% 的数据,满足表达式中只有 succ 操作。 对于另外 40% 的数据,满足表达式中只有 plus 操作。