#include<bits/stdc++.h>
using namespace std;
int way=-1,n,ans;
struct house{
int far,busy;
}h[100000+10];
bool operator>(house a,house b){
return 2*max(way,a.far)+a.busy>2*max(way,b.far)+b.busy;
}
bool operator<(house a, house b){
return 2*max(way,a.far)+a.busy<2*max(way,b.far)+b.busy;
}
priority_queue<house>Q;
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>h[i].far;
}
for(int i=1;i<=n;i++){
cin>>h[i].busy;
Q.push(h[i]);
}
for(int i=1;i<=n;i++){
way=max(way,Q.top().far);
cout<<"ans "<<i<<" "<<way<<" "<<Q.top().far<<" "<<Q.top().busy<<endl;
ans+=Q.top().busy;
Q.pop();
cout<<ans+2*way<<endl;
}
}