下为 RE 写法代码,在处理字符串时:
else {
int p2 = q.top(); q.pop();
int p1 = q.top(); q.pop();
node[++root].lson = p1; node[root].rson = p2;
node[root].opt = '|';
node[root].val = (node[p1].val ^ node[p1].rev) | (node[p2].val ^ node[p2].rev);
q.push(root);
}
0pts。
else 前加上一个判断,改为:
else if (s[i] == '|') {
int p2 = q.top(); q.pop();
int p1 = q.top(); q.pop();
node[++root].lson = p1; node[root].rson = p2;
node[root].opt = '|';
node[root].val = (node[p1].val ^ node[p1].rev) | (node[p2].val ^ node[p2].rev);
q.push(root);
}
即可 AC。不明白原因,请教大佬qwq