思路见注释
#include<bits/stdc++.h>
#define rint register int
#define mmt(a,b) memset(a,b,sizeof(a));
#define test(x) cout<<#x<<" = "<<x<<endl;
using namespace std;
const int inf=0x3f3f3f3f,maxn=1e5;
int n,m,k,l,d;
struct node{
int val,idx;
}x[maxn],y[maxn];
bool cmp(node a,node b)
{
return a.val>b.val;
}
signed main()
{
rint i,j;
cin>>n>>m>>k>>l>>d;
for(i=1;i<maxn;i++)
x[i].idx=y[i].idx=i;
for(i=1;i<=d;i++)
{
int tx,ty,rx,ry;
cin>>tx>>ty>>rx>>ry;
if(tx==rx)y[min(ty,ry)].val++;
else x[min(tx,rx)].val++;
}
sort(x+1,x+n+1,cmp);
sort(y+1,y+m+1,cmp);
for(i=1;i<=k;i++)cout<<x[i].idx<<" ";
cout<<endl;
for(i=1;i<=l;i++)cout<<y[i].idx<<" ";
return 0;
}