阀门链路检测

普及-⏱ 1000ms💾 256MB#P3253🏷️ 栈模拟

题目描述

一条由逻辑阀门串成的检测链路,链路表达式只含字符 0、1、&(串联,两者皆通才通)、 |(并联,任一通即通)和括号。& 的优先级高于 |,同优先级从左到右,括号最优先。 检测采用短路方式:串联时若前段不通(0),后段不再检测(记一次 a&b 短路); 并联时若前段已通(1),后段不再检测(记一次 a|b 短路)。 若某处短路发生在另一个更外层的短路范围内,则该处不重复计数。 求链路的最终通断(0/1)以及两种短路的次数。

输入格式

一行一个非空字符串 $s$,仅含 0、1、&、|、(、)。

输出格式

第一行一个字符 0 或 1,为链路通断; 第二行两个整数,分别为 a&b 型与 a|b 型短路的次数,用空格隔开。

数据范围

$$1 \le |s| \le 50000$$
。

样例输入 #1
1|0&0
样例输出 #1
1
0 1
样例输入 #2
0&(1|0)|(1|1|1&0)
样例输出 #2
1
1 2