#include <bits/stdc++.h>
using namespace std;
const int N = 2e3+10;

struct Node
{
    int cnt=0;
    int id;
};

Node a[N];
Node b[N];

bool cmp(Node aa,Node bb)
{
    return aa.cnt>bb.cnt;
}

int main()
{
    int n,m,k,l,d;
    cin>>n>>m>>k>>l>>d;
    for(int i=1;i<=n;i++)
    {
        a[i].id = i;
    }
    for(int i=1;i<=m;i++)
    {
        b[i].id = i;
    }
    for(int i=1;i<=d;i++)
    {
        int x,y,p,q;
        cin>>x>>y>>p>>q;
        if(x==p)
        {
            int bi = min(y,q);
            b[bi].cnt++;
        }
        else 
        {
            int ai = min(x,p);
            a[ai].cnt++;
        }
    }
    sort(a+1,a+1+n,cmp);
    sort(b+1,b+1+m,cmp);
    vector<int>ans1;
    vector<int>ans2;
    for(int i=1;i<=k;i++)
    {
        ans1.push_back(a[i].id);
    }
    sort(ans1.begin(),ans1.end());
    for(int i=1;i<=l;i++)
    {
        ans2.push_back(b[i].id);
    }
    sort(ans2.begin(),ans2.end());

    for(auto x:ans1)cout<<x<<' ';
    cout<<'\n';
    for(auto x:ans2)cout<<x<<' ';
    cout<<'\n';
    return 0;
}

对x轴和y轴的情况分别进行贪心即可