有两个好朋友Alice和Bob,他们最近刚刚买了一套新房子。为了装修这个房子,他们购买了很多家具和家居用品。然而,他们的品味不太一样,Alice更喜欢现代感强一些的装饰,而Bob则更喜欢传统的装饰风格。于是,他们决定将这个房子装修成一个融合了现代与传统风格的房子。
在购买家具的时候,他们有一个共同的问题,就是如何选择合适的物品来满足他们的需求。Alice会给每个家具打一个现代风格得分,而Bob会给每个家具打一个传统风格得分。然后,他们需要从这个列表中选择一些家具,来装饰他们的新家。他们想要选择的家具应该既能满足Alice的要求,又能满足Bob的要求,因此他们需要在两个得分中都排名靠前的物品中做出选择。
可以发现当两个数组中的第k大与第k大分别对应时,∣ai−bi∣求和最小.(可以使用交换法证明)所以只需将两个数组都排序,此时两个数组位置相同的元素就是最终对应位置的元素。
关键在于需要重排a,b数组不能移动,所以需要移动a的位置与b对应,此时可以记录一个b数组每个元素对应的下标,第一次按元素大小排序,第二遍按下标大小排序,则可以达到重拍a的目的
扫码备注加群即可,期待您的到来~