#include <bits/stdc++.h>
#pragma GCC optimeze(2)
#define N 110000
#define pii pair<int,int>
#define int long long
using namespace std;
int n,sum;
int t,q;
struct Node{
int a,b,c;
}p[N];
bool vis[N];
int cal(int x){
int ans=t+p[x].b;
int maxn=max(q,p[x].a);
return maxn*2+ans;
}
signed main() {
ios::sync_with_stdio(false);
cin.tie(0),cout.tie(0);
memset(vis,false,sizeof vis);
cin>>n;
for(int i=1;i<=n;i++)cin>>p[i].a;
for(int i=1;i<=n;i++)cin>>p[i].b;
for(int i=1;i<=n;i++){
int maxnn=-1e9;
int idx=0;
for(int j=1;j<=n;j++){
if(vis[j])continue;
if(cal(j)>maxnn){
idx=j;
maxnn=cal(j);
}
}
cout<<maxnn<<"\n";
vis[idx]=true;
t+=p[idx].b;
q=max(q,p[idx].a);
}
return 0;
}