mirror of
https://github.com/Kiritow/OJ-Problems-Source.git
synced 2024-03-22 13:11:29 +08:00
Create 1498.cpp
This commit is contained in:
parent
f3d4326dbc
commit
ca98585b3d
101
VIJOS/1498.cpp
Normal file
101
VIJOS/1498.cpp
Normal file
|
@ -0,0 +1,101 @@
|
||||||
|
#include <cstdio>
|
||||||
|
#include <cstdlib>
|
||||||
|
#include <cstring>
|
||||||
|
#include <vector>
|
||||||
|
#include <algorithm>
|
||||||
|
using namespace std;
|
||||||
|
const int MAXD = 2000+5;
|
||||||
|
const int MAXM = 1000+5;
|
||||||
|
const int MAXN = 1000+ 5;
|
||||||
|
int N,M,L,K,D;
|
||||||
|
|
||||||
|
int XLine[MAXN];
|
||||||
|
int YLine[MAXM];
|
||||||
|
|
||||||
|
struct pack
|
||||||
|
{
|
||||||
|
int value;
|
||||||
|
int id;
|
||||||
|
pack(int _Value,int _id) :
|
||||||
|
value(_Value),id(_id){}
|
||||||
|
};
|
||||||
|
|
||||||
|
bool cmp1(const pack& a,const pack& b)
|
||||||
|
{
|
||||||
|
return a.value>b.value;
|
||||||
|
}
|
||||||
|
bool cmp2(const pack& a,const pack& b)
|
||||||
|
{
|
||||||
|
return a.id<b.id;
|
||||||
|
}
|
||||||
|
int main()
|
||||||
|
{
|
||||||
|
scanf("%d %d %d %d %d",&M,&N,&K,&L,&D);
|
||||||
|
for(int i=0;i<D;i++)
|
||||||
|
{
|
||||||
|
int a,b,c,d;
|
||||||
|
scanf("%d %d %d %d",&a,&b,&c,&d);
|
||||||
|
if(a==c)
|
||||||
|
{
|
||||||
|
YLine[min(b,d)]++;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
XLine[min(a,c)]++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int cnt=0;
|
||||||
|
/*
|
||||||
|
for(int i=0;i<=N;i++)
|
||||||
|
{
|
||||||
|
if(XLine[i]>0)
|
||||||
|
{
|
||||||
|
++mcnt;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//*/
|
||||||
|
vector<pack> vec;
|
||||||
|
for(int i=0;i<=M;i++)
|
||||||
|
{
|
||||||
|
if(XLine[i]!=0)
|
||||||
|
{
|
||||||
|
vec.push_back(pack(XLine[i],i));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
sort(vec.begin(),vec.end(),cmp1);
|
||||||
|
sort(vec.begin(),vec.begin()+K,cmp2);
|
||||||
|
for(int i=0;i<K-1;i++)
|
||||||
|
{
|
||||||
|
printf("%d ",vec.at(i).id);
|
||||||
|
}
|
||||||
|
printf("%d\n",vec.at(K-1).id);
|
||||||
|
|
||||||
|
vec.clear();
|
||||||
|
cnt=0;
|
||||||
|
|
||||||
|
/*for(int i=0;i<=M;i++)
|
||||||
|
{
|
||||||
|
if(YLine[i]>0)
|
||||||
|
{
|
||||||
|
++mcnt;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//*/
|
||||||
|
for(int i=0;i<=N;i++)
|
||||||
|
{
|
||||||
|
if(YLine[i]!=0)
|
||||||
|
{
|
||||||
|
vec.push_back(pack(YLine[i],i));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
sort(vec.begin(),vec.end(),cmp1);
|
||||||
|
sort(vec.begin(),vec.begin()+L,cmp2);
|
||||||
|
for(int i=0;i<L-1;i++)
|
||||||
|
{
|
||||||
|
printf("%d ",vec.at(i).id);
|
||||||
|
}
|
||||||
|
printf("%d\n",vec.at(L-1).id);
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user