【題解】洛谷P1056排座椅[NOIP2008普及] 模擬
阿新 • • 發佈:2019-02-16
#include<cstdio>
#include<algorithm>
using namespace std;
const int N=1010;
int x[N],y[N],xn[N<<1],yn[N<<1];
int getmax(int *a)
{
int ans=1;
for(int i=1;i<=1000;i++)
if(a[ans]<a[i])ans=i;
return ans;
}
int main()
{
//freopen("in.txt","r",stdin);
int m,n,k,l,d,i;
int x1,x2,y1,y2;
scanf("%d%d%d%d%d",&m,&n,&k,&l,&d);
for(i=1;i<=d;i++)
{
scanf("%d%d%d%d",&x1,&y1,&x2,&y2);
if(x1==x2)y[min(y1,y2)]++;
else x[min(x1,x2)]++;
}
for(i=1;i<=k;i++)
{
int tmp=getmax(x );
xn[tmp]=1;
x[tmp]=0;
}
for(i=1;i<=l;i++)
{
int tmp=getmax(y);
yn[tmp]=1;
y[tmp]=0;
}
for(i=1;i<=1000;i++)
if(xn[i])printf("%d ",i);
puts("");
for(i=1;i<=1000;i++)
if(yn[i])printf("%d ",i);
puts("");
return 0;
}