只能过样例咋办啊
查看原帖
只能过样例咋办啊
1631828
yuziqian123楼主2025/1/22 07:32

**

#include<bits/stdc++.h>
using namespace std;
priority_queue< int , vector<int> , greater<int> > a,b;
long long m,n,k,l,d,x,y,p,q,num[2010][2010],sum;
struct ss{
	int shu;
	int wei;
}lie[10010],hang[10010];
bool cmp(ss a,ss b){
	return a.shu>b.shu;
}
int main()
{
	cin>>m>>n>>k>>l>>d;
	
	for(int i=1;i<=d;i++){
		cin>>x>>y>>p>>q;
		num[x][y]=i;
		num[p][q]=i;
	}
	for(int i=1;i<=m;i++){
		
		for(int a=1;a<=n-1;a++){
			
			if(num[i][a]==num[i][a+1]&&num[i][a]!=0&&num[i][a+1]!=0) {
				lie[a].shu++;
				lie[a].wei=a;
			}
			 
		} 
	}
	for(int a=1;a<=n;a++){
		
		for(int i=1;i<=m-1;i++){
			
			if(num[i][a]==num[i+1][a]&&num[i][a]!=0&&num[i+1][a]!=0) {
			hang[i].shu++;	
			hang[i].wei=i;	
			}
			 
		} 
	}
	sort(hang+1,hang+1+m,cmp);
	sort(lie+1,lie+1+n,cmp);
	for(int i=1;i<=k;i++){
		a.push(hang[i].wei);
	}
	for(int i=1;i<=l;i++){
		b.push(lie[i].wei);
	}
	for(int i=1;i<=k;i++){
		cout<<a.top();
		if(i<k) cout<<' ';
		a.pop();
	}
	cout<<endl;
	for(int i=1;i<=l;i++){
		cout<<b.top();
		if(i<l) cout<<' ';
		b.pop();
	}
	return 0;
}

**

2025/1/22 07:32
加载中...