题目描述
N 個の文字列 S1,…,SN が与えられます。各文字列は AND
または OR
です。
値が True または False であるような N+1 個の変数の組 (x0,…,xN) であって、 以下のような計算を行った際に、yN が True となるようなものの個数を求めてください。
- y0=x0
- i≥ 1 のとき、Si が
AND
なら yi=yi−1 ∧ xi、Si が OR
なら yi=yi−1 ∨ xi
a ∧ b は a と b の論理積を表し、a ∨ b は a と b の論理和を表します。
输入格式
入力は以下の形式で標準入力から与えられる。
N S1 ⋮ SN
输出格式
答えを出力せよ。
题目大意
题目翻译
有 n 个字符串 AND
或 OR
。填入 n+1 个值,每个值是 TRUE
或 FALSE
,请问有多少种方案可以使这个表达式最后的结果是 TRUE
。表达式的结果就是将这 n 个字符串按顺序插入 n+1 个值之间,从左往右计算。
1≤n≤60。
2
AND
OR
5
5
OR
OR
OR
OR
OR
63
提示
制約
- 1 ≤ N ≤ 60
- Si は
AND
または OR
Sample Explanation 1
例えば $ (x_0,x_1,x_2)=(\text{True},\text{False},\text{True}) $ のとき - y0=x0=True - $ y_1=y_0\ \land\ x_1\ =\ \text{True}\ \land\ \text{False}=\text{False} $ - $ y_2=y_1\ \lor\ x_2\ =\ \text{False}\ \lor\ \text{True}=\text{True} $ となり、y2 は True になります。 y2 が True となるような (x0,x1,x2) の組み合わせは、 - (True,True,True) - (True,True,False) - (True,False,True) - (False,True,True) - (False,False,True) の 5 通りで全てです。
Sample Explanation 2
全てが False のときを除く 26−1 通りで y5 は True になります。