谢大佬
#include<bits/stdc++.h>
using namespace std;
char s[1000005];
int ans, cnt1, cnt2, flag;
int main() {
scanf("%s", s);
int len = strlen(s);
for(int i = 0;s[i];++i) {
if(flag) {
if(s[i]=='(') {
int cnt = 1;
while(cnt) {
++i;
if(s[i] == '(') ++cnt;
if(s[i] == ')') --cnt;
}
}
else if(flag == 1) ++i;
else if(flag == 2) {
int pos = i+1;
while(pos<len && s[pos]!='|' && s[pos]!='&') ++pos;
if(pos == len) break;
if(s[pos] == '&') {
while(i<len && s[i]!='|' && s[i]!=')') ++i;
}
else ++i;
}
flag = 0;
}
if(s[i] == '1') ans = 1;
if(s[i] == '0') ans = 0;
if(s[i]=='&'&&ans==0) flag = 1, ++cnt1;
if(s[i]=='|'&&ans==1) flag = 2, ++cnt2;
}
printf("%d\n%d %d", ans, cnt1, cnt2);
return 0;
}