问题 1116. -- 篱笆

1116: 篱笆

时间限制: 1 Sec  内存限制: 128 MB  Special Judge
提交: 45  解决: 29
[提交][状态][讨论版]

题目描述

小明要做一个篱笆,篱笆由N块高度不同的木条组成,我们定义它的好看程度为相邻的篱笆的高度差的绝对值之和。小明已经买好了木条,但它不知道要如何安排顺序,才能使他的篱笆与小华的相似,并且尽量好看。

我们认为两个篱笆相似当且仅当两个篱笆的高低变化情况一致。即如果一个篱笆中的第i块木条高于第i+1块,则另一个篱笆中的第i块也高于第i+1块,则认为它们相似。

给出小华的篱笆信息,和小明买到的每块木板的长度,现在要求出小明的解决方案,使得他的篱笆与小华的相似,且尽量好看。如果有多种解决方案,任意输出一种即可。

输入

第一行一个整数N2<=N<=300000),表示木条的数量。

第二行是N个不同的正整数,表示小华的篱笆。

第三行N个不同的正整数,表示小明的木板。

输出

第一行:一个整数,表示篱笆的好看程度。

第二行是N个不同的正整数,表示小明的篱笆。

样例输入

4
5 7 4 9
1 2 3 4

样例输出

7
2 4 1 3

提示

来源

[提交][状态]