#include<iostream>
#include<queue>
using namespace std;
priority_queue<int> pq;
const int N = 100010;
int a[N], b[N];
int n;
void print(int x)
{
if(x == 0) return;
int y = pq.top(); pq.pop();
print(x - 1);
cout << y << ' ';
}
int main()
{
cin >> n;
for(int i = 1; i <= n; i++)
cin >> a[i];
for(int i = 1; i <= n; i++)
cin >> b[i];
pq.push(a[n] + b[1]);
for(int i = 1; i < n; i++)
{
for(int j = 1; j <= n && a[i] + b[j] <= pq.top(); j++)
{
pq.push(a[i] + b[j]);
if(pq.size() == n + 1)
pq.pop();
}
}
print(n);
return 0;
}