题目描述
牛能有 n{n}n 件装备和 n{n}n 颗宝石,第 i{i}i 件装备的重量为 aia_iai,第 i{i}i 颗宝石的重量为 bib_ibi,牛能要给每一件装备都嵌上一颗宝石,当牛能给第 i{i}i 件装备嵌上第 j{j}j 颗宝石后,装备的重量会变为 ai+bja_i+b_jai+bj,牛能对装备的厌恶度为所有装备中重量的最大值。你作为牛能的好朋友,决定帮助牛能给装备嵌上宝石,使得牛能对装备的厌恶度尽可能的小。
输入描述:
第一行一个整数 n{n}n
第二行 n{n}n 个整数 a1a2…ana_1 a_2 … a_na1a2…an
第三行 n{n}n 个整数 b1b2…bnb_1 b_2 … b_nb1b2…bn
输出描述:
输出一个整数表示嵌上宝石后小灰灰对装备的厌恶度。
输入
5
1 2 3 4 5
5 4 3 2 1
输出
6
备注:
1≤n,ai,bi≤1000001\leq n,a_i,b_i\leq 1000001≤n,ai,bi≤100000
代码
#include<iostream>
#include<algorithm>
using namespace std;
bool cmp(int x,int y){
return x>y;
}
int main(){
int i,n,a[100000],b[100000],Max=0,x;
cin>>n;
for(i=0;i<n;i++)
cin>>a[i];
for(i=0;i<n;i++)
cin>>b[i];
sort(a,a+n);
sort(b,b+n,cmp);
for(i=0;i<n;i++){
x=a[i]+b[i];
if(x>Max)
Max=x;
}
cout<<Max<<endl;
return 0;
}