U1349 「USACO 2024 US Open Bronze」Farmer John's Favorite Permutation

暂无评定 传统题 USACO2024Bronze 上传者
时间限制2000ms
内存限制256MiB
通过 / 提交0/0

U1349「USACO 2024 US Open Bronze」Farmer John's Favorite Permutation

暂无评定 传统题 USACO2024Bronze 上传者
时间限制2000ms
内存限制256MiB
通过 / 提交0/0

本题使用标准输入、标准输出,无需读写题面中提到的文件。

题目描述

农夫 John 有一个长度为 NN 的排列 pp(2≤N≤1052 \leq N \leq 10^5),其中恰好包含从 11 到 NN 的每个正整数各一次。然而,农夫 Nhoj 闯入了 FJ 的谷仓并把 pp 拆散了。为了不至于太残忍,FN 写下了一些提示来帮助 FJ 重新构造 pp。当 pp 中剩余元素数量大于 1 时,FN 会执行如下操作: 设当前剩余的 pp 的元素为 p1′,p2′,…,pn′p'_1, p'_2, \dots , p'_n。 如果 p1′>pn′p'_1 > p'_n,他会写下 p2′p'_2,并从排列中移除 p1′p'_1。 否则,他会写下 pn−1′p'_{n-1},并从排列中移除 pn′p'_n。 最后,农夫 Nhoj 将按顺序写下 N−1N - 1 个整数 h1,h2,…,hN−1h_1, h_2, \dots, h_{N-1}。给定 hh,农夫 John 希望你帮助他重构与农夫 Nhoj 提示一致的、字典序最小的排列 pp,或者判断农夫 Nhoj 一定是弄错了。回顾:给定两个排列 pp 与 p′p',若在它们首次出现不同的下标 ii 处有 pi<pi′p_i < p'_i,则称 pp 的字典序小于 p′p'。

输入格式

每个输入包含 TT 个相互独立的测试用例(1≤T≤101\le T\le 10)。每个测试用例如下: 第一行包含 NN。 第二行包含 N−1N - 1 个整数 h1,h2,…,hN−1h_1, h_2, \dots, h_{N-1}(1≤hi≤N1\le h_i\le N)。

输出格式

输出 TT 行,每行对应一个测试用例。 如果存在一个由 1…N1\dots N 组成且与 hh 一致的排列 pp,输出其中字典序最小的那个 pp。如果不存在这样的 pp,输出 −1-1。

5
2
1
2
2
4
1 1 1
4
2 1 1
4
3 2 1
1 2
-1
-1
3 1 2 4
1 2 3 4

提示

对于第四个测试用例,若 p=[3,1,2,4]p=[3,1,2,4],则 FN 会写下 h=[2,1,1]h=[2,1,1]。 p' = [3,1,2,4] p_1' < p_n' -> h_1 = 2 p' = [3,1,2] p_1' > p_n' -> h_2 = 1 p' = [1,2] p_1' < p_n' -> h_3 = 1 p' = [1] 注意,排列 p=[4,2,1,3]p=[4,2,1,3] 也会产生相同的 hh,但 [3,1,2,4][3,1,2,4] 的字典序更小。 对于第二个测试用例,不存在与 hh 一致的 pp;p=[1,2]p=[1,2] 和 p=[2,1]p=[2,1] 都会产生 h=[1]h=[1],而不是 h=[2]h=[2]。 SCORING: Input 2: N≤8N\le 8 Inputs 3-6: N≤100N\le 100 Inputs 7-11: 无额外限制。 题目鸣谢:Chongtian Ma

来源

USACO|2024|Bronze