#P1676. 数组重排(二)

数组重排(二)

题目描述

有两个好朋友AliceAliceBobBob,他们最近刚刚买了一套新房子。为了装修这个房子,他们购买了很多家具和家居用品。

然而,他们的品味不太一样,AliceAlice更喜欢现代感强一些的装饰,而BobBob则更喜欢传统的装饰风格。于是,他们决定将这个房子装修成一个融合了现代与传统风格的房子。

在购买家具的时候,他们有一个共同的问题,就是如何选择合适的物品来满足他们的需求。AliceAlice会给每个家具打一个现代风格得分,而BobBob会给每个家具打一个传统风格得分。

然后,他们需要从这个列表中选择一些家具,来装饰他们的新家。他们想要选择的家具应该既能满足AliceAlice的要求,又能满足BobBob的要求,因此他们需要在两个得分中都排名靠前的物品中做出选择。

在选择家具的过程中,他们发现在同一家具上,两人的得分可能会存在一些差异。

于是,他们需要重新安排自己所选择的家具的顺序,来最大限度地满足双方的需求。他们想要使得他们所选择的家具的顺序,能够在两个得分中都尽可能接近排名靠前的物品。

AliceAliceBobBob给定两个长度为nn的数组aabb,现在他们需要你帮忙对aa数组进行重排,使得i=1naibi\sum_{i=1}^{n}|a_{i}-b_{i}| 尽可能小,这样才能使得他们的房子更能符合两个人的心意,请你输出一个最优解。

输入描述

第一行输入一个正整数n(1n105)n(1\le n\le 10^5)

第二行输入nn个正整数ai(1ai109)a_{i}(1\le a_i\le 10^9)

第三行输入nn个正整数bi(1bi109)b_{i}(1\le b_i\le 10^9)

输出描述

输出nn个正整数,代表重排后的aa数组。

如果有多个重排方式,输出任意即可

样例1

输入

5
1 2 3 4 5
5 4 3 2 1

输出

5 4 3 2 1