题目描述
给出两个长度为 n 的有序表 A 和 B,在 A 和 B 中各任取一个元素,可以得到 n*n 个和,求这些和中最小的 n 个。
输入格式
第 1 行包含 1 个整数正 n(n≤400000)。 第 2 行与第 3 行分别有 n 个整数,各代表有序表 A 和 B。一行中的每两个整数之间用一个空格隔开,大小在长整型范围内,数据保证有序表单调递增。
输出格式
输出共 n 行,每行一个整数,第 i 行为第 i 小的和。 数据保证在 long long 范围内。
样例
【输入样例】
3
1 2 5
2 4 7
【输出样例】
3
4
5
代码时间
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll n,m,a[400005],b[400005],ans[400005],top;
priority_queue<ll,vector<ll>,less