Pagini recente » Cod sursa (job #583847) | Cod sursa (job #1489531) | Cod sursa (job #1833872) | Cod sursa (job #1728134) | Cod sursa (job #129465)
Cod sursa(job #129465)
#include<cstdio>
#include<algorithm>
#include<vector>
using namespace std;
int n,H,V,t,i,X,Y,xv,x_last,nr;
vector< pair<int, pair<int,int> > > v;
#define x(i) (v[i].second.second)
#define y(i) (v[i].first)
#define d(i) (v[i].second.first)
#define oriz 0
#define vert 1
int main()
{freopen("hvrays.in","r",stdin);
freopen("hvrays.out","w",stdout);
scanf("%d",&t);
while(t--){
scanf("%d %d",&H,&V);
n=H+V;
nr=0;
xv=x_last=-1;
v.clear();
for(i=1;i<=H;i++){
scanf("%d %d",&X,&Y);
v.push_back(make_pair(Y,make_pair(oriz,X)));}
for(i=1;i<=V;i++){
scanf("%d %d",&X,&Y);
v.push_back(make_pair(Y,make_pair(vert,X)));}
sort(v.begin(),v.end());
for(i=n-1;i>=0;i--)
if(d(i)==vert){
if(x(i)>xv)
xv=x(i);}
else{
if(x(i)>xv){
nr=0;
break;}
else
if(x(i)>x_last){
nr++;
x_last=xv;}}
printf("%d\n",nr);}
fclose(stdout);
return 0;}