CF1252A.Copying Homework

传统题 时间 2000 ms 内存 256 MiB 5 尝试 1 已通过 1 标签

Copying Homework

题目描述

Danang 和 Darto 是同班同学。他们收到了一项作业,要求将 11NN 的整数排列成一个全排列。Danang 已经完成了作业,生成了一个长度为 NN 的全排列 AA。Darto 想抄 Danang 的作业,但 Danang 要求 Darto 稍作修改,以免老师发现 Darto 抄袭。

两个长度为 NN 的全排列 AABB 的差异,记作 diff(A,B)diff(A, B),定义为所有 iiAiBi|A_i - B_i| 的和。换句话说,diff(A,B)=i=1NAiBidiff(A, B) = \sum_{i=1}^N |A_i - B_i|。Darto 想要构造一个长度为 NN 的全排列 BB,使得它与 AA 的差异最大。形式化地说,他想找到一个全排列 BmaxB_{max},使得对于所有长度为 NN 的全排列 BB',都有 diff(A,Bmax)diff(A,B)diff(A, B_{max}) \ge diff(A, B')

Darto 需要你的帮助!由于老师比较宽松,只要 AABB 的差异至少为 NN,就认为 BBAA 不同。因此,你只需要输出一个满足 diff(A,B)Ndiff(A, B) \ge N 的全排列 BB 即可。

当然,你也可以输出 BmaxB_{max},因为可以证明对于任意长度为 NN 的全排列 AAN>1N > 1,都有 diff(A,Bmax)Ndiff(A, B_{max}) \ge N。这也证明了对于任意全排列 AA 都存在解。如果有多个满足条件的解,你可以输出任意一个。

输入格式

输入的第一行包含一个整数 NN2N1000002 \le N \le 100\,000),表示 Danang 的全排列的长度。
第二行包含 NN 个整数 AiA_i1AiN1 \le A_i \le N),表示 Danang 的全排列。保证 AA 中所有元素互不相同。

输出格式

输出一行 NN 个整数(用一个空格分隔),表示一个长度为 NN 的全排列 BB,满足 diff(A,B)Ndiff(A, B) \ge N。注意,BB 必须是 11NN 的一个全排列,且所有元素互不相同。

说明/提示

样例输入输出 #1 说明

对于 A=[1,3,2,4]A = [1, 3, 2, 4]B=[4,2,3,1]B = [4, 2, 3, 1],有 $diff(A, B) = |1 - 4| + |3 - 2| + |2 - 3| + |4 - 1| = 3 + 1 + 1 + 3 = 8$。由于 848 \ge 4[4,2,3,1][4, 2, 3, 1] 是本样例的一个合法输出。

由 ChatGPT 4.1 翻译

样例

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

在线编程 IDE

建议全屏模式获得最佳体验