CF1385B.Restore the Permutation by Merger

入门

通过率:0%

时间限制:1.00s

内存限制:256MB

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

A permutation of length nn is a sequence of integers from 11 to nn of length nn containing each number exactly once. For example, [1][1], [4,3,5,1,2][4, 3, 5, 1, 2], [3,2,1][3, 2, 1] are permutations, and [1,1][1, 1], [0,1][0, 1], [2,2,1,4][2, 2, 1, 4] are not.

There was a permutation p[1…n]p[1 \dots n]. It was merged with itself. In other words, let's take two instances of pp and insert elements of the second pp into the first maintaining relative order of elements. The result is a sequence of the length 2n2n.

For example, if p=[3,1,2]p=[3, 1, 2] some possible results are: [3,1,2,3,1,2][3, 1, 2, 3, 1, 2], [3,3,1,1,2,2][3, 3, 1, 1, 2, 2], [3,1,3,1,2,2][3, 1, 3, 1, 2, 2]. The following sequences are not possible results of a merging: [1,3,2,1,2,3[1, 3, 2, 1, 2, 3], [3,1,2,3,2,1]3, 1, 2, 3, 2, 1], [3,3,1,2,2,1][3, 3, 1, 2, 2, 1].

For example, if p=[2,1]p=[2, 1] the possible results are: [2,2,1,1][2, 2, 1, 1], [2,1,2,1][2, 1, 2, 1]. The following sequences are not possible results of a merging: [1,1,2,2[1, 1, 2, 2], [2,1,1,2]2, 1, 1, 2], [1,2,2,1][1, 2, 2, 1].

Your task is to restore the permutation pp by the given resulting sequence aa. It is guaranteed that the answer exists and is unique.

You have to answer tt independent test cases.

长度为 nn 的排列是指由 11 到 nn 的整数构成、长度为 nn 且每个数字恰好出现一次的序列。例如,[1][1]、[4,3,5,1,2][4, 3, 5, 1, 2]、[3,2,1][3, 2, 1] 是排列,而 [1,1][1, 1]、[0,1][0, 1]、[2,2,1,4][2, 2, 1, 4] 不是。

原有一个排列 p[1…n]p[1 \dots n]。该排列与自身进行了“合并”。换言之,取两个 pp 的副本,并将第二个 pp 的所有元素按其原有相对顺序插入到第一个 pp 中,得到一个长度为 2n2n 的序列。

例如,若 p=[3,1,2]p=[3, 1, 2],则一些可能的合并结果为:[3,1,2,3,1,2][3, 1, 2, 3, 1, 2]、[3,3,1,1,2,2][3, 3, 1, 1, 2, 2]、[3,1,3,1,2,2][3, 1, 3, 1, 2, 2]。以下序列不可能是该合并操作的结果:[1,3,2,1,2,3][1, 3, 2, 1, 2, 3]、[3,1,2,3,2,1][3, 1, 2, 3, 2, 1]、[3,3,1,2,2,1][3, 3, 1, 2, 2, 1]。

再如,若 p=[2,1]p=[2, 1],则可能的合并结果为:[2,2,1,1][2, 2, 1, 1]、[2,1,2,1][2, 1, 2, 1]。以下序列不可能是该合并操作的结果:[1,1,2,2][1, 1, 2, 2]、[2,1,1,2][2, 1, 1, 2]、[1,2,2,1][1, 2, 2, 1]。

你的任务是根据给定的合并后序列 aa,还原出原始排列 pp。题目保证答案存在且唯一。

你需要回答 tt 个相互独立的测试用例。

输入格式

The first line of the input contains one integer tt (1≤t≤4001 \le t \le 400) — the number of test cases. Then tt test cases follow.

The first line of the test case contains one integer nn (1≤n≤501 \le n \le 50) — the length of permutation. The second line of the test case contains 2n2n integers a1,a2,…,a2na_1, a_2, \dots, a_{2n} (1≤ai≤n1 \le a_i \le n), where aia_i is the ii-th element of aa. It is guaranteed that the array aa represents the result of merging of some permutation pp with the same permutation pp.

输入的第一行包含一个整数 tt(1≤t≤4001 \le t \le 400),表示测试用例的数量。随后是 tt 个测试用例。

每个测试用例的第一行包含一个整数 nn(1≤n≤501 \le n \le 50),表示排列的长度。每个测试用例的第二行包含 2n2n 个整数 a1,a2,…,a2na_1, a_2, \dots, a_{2n}(1≤ai≤n1 \le a_i \le n),其中 aia_i 是数组 aa 的第 ii 个元素。保证数组 aa 是将某个排列 pp 与同一排列 pp 合并后得到的结果。

输出格式

For each test case, print the answer: nn integers p1,p2,…,pnp_1, p_2, \dots, p_n (1≤pi≤n1 \le p_i \le n), representing the initial permutation. It is guaranteed that the answer exists and is unique.

对于每个测试用例,输出答案:nn 个整数 p1,p2,…,pnp_1, p_2, \dots, p_n(其中 1≤pi≤n1 \le p_i \le n),表示初始排列。保证答案存在且唯一。

输入输出样例

  • 输入#1

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

    输出#1

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

输入解题思路,AI测评打分。不知道怎么写?

首页