P7915 Solution
考虑枚举第一个操作选 L
还是 R
。这样原序列就被分为了两个栈,用四个指针 \(p1,p2,p3,p4\) 分别指向这两个栈的栈顶栈底。
感性理解一下,某一个栈的栈顶 \(x\) 可以被 pop 当且仅当某一个栈的栈底等于 \(x\)。
于是直接 dfs,每次优先选 L
,同时确定第 \(2n-i+1\) 次的操作即可。
注意在搜完 L
的情况后如果搜到了答案应该直接返回,否则会 TLE。
考虑枚举第一个操作选 L
还是 R
。这样原序列就被分为了两个栈,用四个指针 \(p1,p2,p3,p4\) 分别指向这两个栈的栈顶栈底。
感性理解一下,某一个栈的栈顶 \(x\) 可以被 pop 当且仅当某一个栈的栈底等于 \(x\)。
于是直接 dfs,每次优先选 L
,同时确定第 \(2n-i+1\) 次的操作即可。
注意在搜完 L
的情况后如果搜到了答案应该直接返回,否则会 TLE。