原题链接 谁能帮我看看为什么样例一直输出 0 2 0 啊?
#include <iostream>
#include <algorithm>
using namespace std;
int m,n,k1,l1,d; //k代表行,l代表列
int k[1005],l[1005];
int a1,b1,a2,b2;
int li=0,ki=0;
int main()
{
cin>>m>>n>>k1>>l1>>d;
for(int i=1;i<=d;i++)
{
cin>>a1>>b1>>a2>>b2;
if(a1==a2)// 在同一行上
{
l[b1]++;
li++;
}
else if(b1==b2)// 在同一列上
{
k[a1]++;
ki++;
}
}
for(int i=1;i<=k1;i++)
{
int maxf=0,maxx=0;
for(int j=1;j<=ki;j++)
if(k[j]>maxf)
{
maxf=k[j];
maxx=j;
}
cout<<maxx<<' ';
k[maxx]=0;
}
cout<<endl;
for(int i=1;i<=l1;i++)
{
int maxf=0,maxx=0;
for(int j=1;j<=li;j++)
if(l[j]>maxf)
{
maxf=l[j];
maxx=j;
}
l[maxx]=0;
cout<<maxx<<' ';
}
return 0;
}