呕~~ 真是醉了,调了仨小时了,还是十分
#include<bits/stdc++.h>
using namespace std;
struct node1{
long long arrive1;
long long leave1;
bool flag1;
}a1[50000 + 10];
struct node2{
long long arrive2;
long long leave2;
bool flag2;
}a2[50000 + 10];
bool Cmp(long long a, long long b){
return a < b;
}
long long m1, m2, n, cc, sum;
int main(){
cin >>n >>m1 >>m2;
for(int i = 1;i <= m1;i++){
cin >>a1[i].arrive1 >>a1[i].leave1;
}
for(int i = 1;i <= m2;i++){
cin >>a2[i].arrive2 >>a2[i].leave2;
}
for(int i = 1;i <= m1;i++){
for(int j = i;j <= m1;j++){
if(a1[i].arrive1 > a1[j].arrive1){
swap(a1[i], a1[j]);
}
}
}
for(int i = 1;i <= m1;i ++){
a1[i].flag1 = true;
}
for(int i = 1;i <= m1;i ++){
for(int j = 1;j <= m1;j ++){
if(a1[i].leave1 < a1[j].arrive1 ){
if(a1[j].flag1 = true){
a1[j].flag1 = false;
}
}
}
}
for(int i = 1;i <= m1;i++){
if(a1[i].flag1 = true){
sum++;
}
}
for(int i = 1;i <= m2;i++){
for(int j = i;j <= m2;j++){
if(a2[i].arrive2 > a2[j].arrive2){
swap(a2[i], a2[j]);
}
}
}
for(int i = 1;i <= m2;i ++){
a1[i].flag1 = true;
}
for(int i = 1;i <= m2;i ++){
for(int j = 1;j <= m2;j ++){
if(a2[i].leave2 < a2[j].arrive2){
if(a2[j].flag2 = true){
a2[j].flag2 = false;
}
}
}
}
for(int i = 1;i <= m2;i++){
if(a2[i].flag2 = true){
sum++;
}
}
cout<<sum;
return 0;
}