atcoder#ARC141C. [ARC141C] Bracket and Permutation
[ARC141C] Bracket and Permutation
题目描述
長さ の文字列 について、 が 個の (
, および 個の )
で構成されるとき、 は「括弧列」であるといいます。
また、「括弧列」 のうち、以下のいずれかに該当するものを「正しい括弧列」といいます。
- 空文字列
- ある「正しい括弧列」 が存在して
(
, ,)
をこの順に連結した文字列 - ある空でない「正しい括弧列」 が存在して、 をこの順に連結した文字列
から までの整数からなる つの順列 $ P=(P_1,\ P_2,\ \dots,\ P_{2N}),\ Q=(Q_1,\ Q_2,\ \dots,\ Q_{2N}) $ が与えられます。
以下の条件を満たすような「括弧列」 が存在するか判定してください。
- が「正しい括弧列」となるような から までの整数の順列 のうち、辞書式順序で最小のものが
- が「正しい括弧列」となるような から までの整数の順列 のうち、辞書式順序で最大のものが
存在する場合は つ求めてください。
输入格式
入力は以下の形式で標準入力から与えられます。
输出格式
上記のような「括弧列」 が存在する場合、そのうち つを出力してください。答えが複数存在する場合はいずれを出力してもかまいません。
存在しない場合は -1
を出力してください。
题目大意
给你两个长度为 的排列 ,还有一个要求的括号序列 ,长度也是 。定义一个长度为 的排列 是合法的,当且仅当按照 的顺序写下得到的字符串是合法的括号序列,其中 是合法的排列中字典序最小的, 是最大的,求 。
translate by Xy_top
2
1 2 4 3
4 3 1 2
())(
2
1 3 2 4
4 3 2 1
-1
3
2 1 5 3 4 6
6 5 3 4 2 1
-1
提示
制約
- はそれぞれ から までの整数の順列
- 入力される値はすべて整数
Sample Explanation 1
())(
のとき、 が「正しい括弧列」となる は などが考えられますが、このうち辞書式順序で最小のものは 、最大のものは であり、 は条件を満たします。
Sample Explanation 2
条件を満たす は存在しません。