atcoder#ABC255F. [ABC255F] Pre-order and In-order
[ABC255F] Pre-order and In-order
题目描述
と番号づけられた 個の頂点を持つ二分木を考えます。 ここで、二分木とは各頂点が高々 個の子を持つ根付き木です。より具体的には、二分木の各頂点は高々 個の左の子と高々 個の右の子を持ちます。
頂点 を根とする二分木であって、下記の条件を満たすものが存在するかを判定し、存在する場合はその一例を示してください。
输入格式
入力は以下の形式で標準入力から与えられる。
输出格式
問題文中の条件を満たすような頂点 を根とする二分木が存在しない場合は を出力せよ。
存在する場合は、条件を満たす二分木の一例を下記の形式にしたがって 行にわたって出力せよ。 すなわち、 について、 行目には頂点 の左の子の番号 と右の子の番号 を出力せよ。 ただし、左の子(または右の子)を持たない場合は (または )として を出力せよ。
条件を満たすような頂点 を根とする二分木が複数存在する場合は、そのうちどれを出力しても正解となる。
题目大意
给定一棵二叉树的先序遍历和中序遍历,请构造一棵以 节点为根的二叉树。第 行输出节点 的左右儿子,儿子为空则输出 。无解输出 -1
。
6
1 3 5 6 4 2
3 5 1 4 6 2
3 6
0 0
0 5
0 0
0 0
4 2
2
2 1
1 2
-1
提示
制約
- は整数
- は の順列
- は の順列
Sample Explanation 1
次の画像に示す、頂点 を根とする二分木が問題文中の条件を満たします。 ![](https://img.atcoder.jp/abc255/b51399e8953ae1723d1d9e83617f9be9.png)
Sample Explanation 2
問題文中の条件を満たすような頂点 を根とする二分木は存在しません。よって を出力します。