luogu#P8083. [COCI2011-2012#4] OGRADA

[COCI2011-2012#4] OGRADA

题目描述

给定两个元素个数为 NN 的数组 A,BA,B

规定一个数组的权值为该数组中所有相邻元素的大小差的绝对值之和。现可将 BB 数组变成其任意的一个排列 BB',使得对 i[1,N)Z\forall i \in [1,N) \cap \Z 满足:

  • Ai<Ai+1A_i \lt A_{i+1},则 Bi<Bi+1B'_i \lt B'_{i+1}
  • Ai>Ai+1A_i \gt A_{i+1},则 Bi>Bi+1B'_i \gt B'_{i+1}

求在所有方案中权值最大的排列 BB' 及最大权值。

输入格式

第一行,一个整数 NN

第二行,NN 个正整数 AiA_i

第三行,NN 个正整数 BiB_i

输出格式

第一行,一个正整数表示最大权值。

第二行,NN 个用空格分开的正整数,表示 BB' 中的元素。如果有多种符合题意的 BB',请输出任意一种。

4
5 7 4 9
1 2 3 4
7
2 4 1 3
10
9 5 1 2 6 7 4 18 20 12
10 40 20 30 50 70 80 100 1000 500
3010
100 80 10 40 50 1000 20 70 500 30

提示

【样例 1 解释】

合法的数组 BB' 有:

  • {1,3,2,4}\{1,3,2,4\},权值为 2+1+2=52+1+2=5
  • {1,4,2,3}\{1,4,2,3\},权值为 3+2+1=63+2+1=6
  • {2,3,1,4}\{2,3,1,4\},权值为 1+2+3=61+2+3=6
  • {2,4,1,3}\bf \{2,4,1,3\} ,权值为 2+3+2=7\bf2+3+2=7
  • {3,4,1,2}\{3,4,1,2\},权值为 1+3+1=51+3+1=5

【数据规模与约定】

  • 对于 100%100\% 的数据,2N3×1052 \le N \le 3 \times 10^51Ai,Bi<1091 \le A_i,B_i \lt 10^9

【提示与说明】

如果只答对第一行而第二行错误或为空,则可以获得对应测试点 50%50\% 的分数。

欢迎通过私信或发帖对自行编写的 Special Judge 进行 hack。

题目译自 COCI 2011-2012 CONTEST #4 Task 4 OGRADA

本题分值按 COCI 原题设置,满分 120120