Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include<cstring>#include<cstdlib>#include<algorithm>#include<cstdio>#include<iostream>#include<vector>#include<set>#include<map>using namespace std;void gn(int &x){char c;while((c=getchar())<'0'||c>'9');x=c-'0';while((c=getchar())>='0' && c<='9')x=x*10+c-'0';}int n,m;struct pa{int i,cnt,num;}a[200005];int cmp(const pa&a,const pa&b){if(a.num==b.num)return a.i<b.i;return a.num<b.num;}typedef long long ll;int main(){int tes;scanf("%d",&tes);while(tes--){scanf("%d%d",&n,&m);for (int i=1;i<=n;i++)scanf("%d%d",&a[i].num,&a[i].cnt),a[i].i=0;for (int i=n+1;i<=n+m;i++)scanf("%d%d",&a[i].num,&a[i].cnt),a[i].i=1;sort(a+1,a+1+n+m,cmp);