10分,没过阳历
#include<bits/stdc++.h>
using namespace std;
const int N = 2e3 + 5;
int n , m , k , l , d;
int x[N] , y[N] , p[N] , q[N] , maxna = -1 , maxnb = -1;
int main(){
cin >> n >> m >> k >> l >> d;
int td = d;
int cnt = 0;
while(d--){
cin >> x[++cnt] >> y[cnt] >> p[cnt] >> q[cnt];
maxna = max(maxna , x[cnt]) , maxnb = max(maxnb , y[cnt]);
}
int a[maxna + 5] = {0} , b[maxnb + 5] = {0};
for(int i = 1 ; i <= td ; i++){
if(y[i] == q[i]) a[min(x[i] , p[i])]++;
if(x[i] == p[i]) b[min(y[i] , q[i])]++;
}
for(int i = 1 ; i <= k ; i++){
int maxx = -1 , id;
for(int j = 1 ; j <= td ; j++){
if(maxx <= a[x[j]]) maxx = a[x[j]] , id = j;
}
cout << min(y[id] , q[id]) << " ";
a[x[id]] = -114514;
}
cout << "\n";
for(int i = 1 ; i <= l ; i++){
int maxy = -1 , id;
for(int j = 1 ; j <= td ; j++){
if(maxy <= a[y[j]]) maxy = a[y[j]] , id = j;
}
cout << min(x[id] , p[id]) << " ";
a[y[id]] = -114514;
}
return 0;
}