#include <bits/stdc++.h>
using namespace std;
struct mon{
int dis;
int tui;
int all;
}money[100007];
int sor(mon a, mon b){
return a.all > b.all;
}
int sor1(mon a, mon b){
if(a.tui == b.tui){
return a.dis > b.dis;
}
return a.tui > b.tui;
}
int main(){
int n;
cin >> n;
for(int i = 0; i < n; i++){
cin >> money[i].dis;
}
for(int i = 0; i < n; i++){
cin >> money[i].tui;
money[i].all = money[i].dis * 2 + money[i].tui;
}
sort(money, money + n, sor);
cout << money[0].all << endl;
sort(money + 1, money + n, sor1);
int now = money[0].tui, big = money[0].dis;
for(int i = 1; i < n; i++){
if(money[i].dis > big){
big = money[i].dis;
}
now += money[i].tui;
cout << big * 2 + now << endl;
}
return 0;
}
为什么我这个贪心都可以过?