Logo Universal Online Judge

UOJ

时间限制:1 s 空间限制:512 MB

#2023. Homework

统计

题目描述

这是 Helena 的数学作业中的一道题:

我们定义合法表达式如下:

  • ? 是合法表达式,这表示一个未知数。
  • 如果 $A,B$ 均为合法表达式,那么 min($A$,$B$)max($A$,$B$) 均为合法表达式,这分别表示取左右两边的最大值/最小值。

? 的个数为 $N$,现在给出一个合法表达式,将每一个问号替换为 $1\sim N$ 中的任意一个数并且每一个数不能使用多次,可以得到多少种不同的答案?

可怜的 Helena 并不会做,请你帮帮她。

输入格式

仅一行一个字符串表示给出的合法表达式。

输出格式

输出一个整数,表示不同答案的个数。

样例 #1

样例输入 #1

min(min(?,?),min(?,?))

样例输出 #1

1

样例 #2

样例输入 #2

max(?,max(?,min(?,?)))

样例输出 #2

2

样例 #3

样例输入 #3

min(max(?,?),min(?,max(?,?)))

样例输出 #3

3

提示

样例 1 解释

无论权值如何选择,最后的答案都会是 $\min\{1,2,3,4\}$,也就是 $1$。

样例 2 解释

答案为 $4$ 的方案是: 4=max(4,max(3,min(2,1))),答案为 $3$ 的方案是 3=max(3,max(2,min(1,4))),可以证明答案不可能为 $1$ 或 $2$。

数据规模与约定

对于全部数据,$2\le N\le 10^6$。

Subtask 编号 特殊限制 得分
$1$ $N\le 9$ $10$
$2$ $N\le 16$ $13$
$3$ 对于任意 min($A$,$B$)max($A$,$B$),$A$ 和 $B$ 中有一个为 ? $13$
$4$ $N\le 10^3$ $30$
$5$ 无特殊限制 $34$