P1056 50分求调
  • 板块学术版
  • 楼主jrlimuyang
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/7/20 19:53
  • 上次更新2024/7/20 20:12:41
查看原帖
P1056 50分求调
774757
jrlimuyang楼主2024/7/20 19:53
#include <bits/stdc++.h>
#define ll long long
#define f(i,a,b,c) for(int i=a;i<=b;i+=c)
#define ff(i,a,b,c) for(int i=a;i>b;i-=c)
using namespace std;
const int N=10001;
int m,n,k,l,d,x,y,p,q,an1[N],an2[N];
struct hallway{
	int zb,id;
}a[N],b[N];
bool cmp(hallway a,hallway b){
	return a.zb>=b.zb;
}
int main(){
    scanf("%d%d%d%d%d",&m,&n,&k,&l,&d);
    f(i,1,m,1) a[i].id=i;
    f(i,1,n,1) b[i].id=i;
    f(i,1,d,1){
    	scanf("%d%d%d%d",&x,&y,&p,&q);
    	if(x==p) b[min(y,q)].zb++;
    	else a[min(x,p)].zb++;
	}
	sort(a+1,a+m,cmp);
	sort(b+1,b+n,cmp);
	p=0,q=0;
	f(i,1,k,1) an1[++p]=a[i].id;
	f(i,1,l,1) an2[++q]=b[i].id;
	sort(an1+1,an1+p+1);
	sort(an2+1,an2+q+1);
	f(i,1,k,1) printf("%d ",an1[i]);
	puts("");
	f(i,1,l,1) printf("%d ",an2[i]);
    return 0;
}

提交上面的代码5个RE

2024/7/20 19:53
加载中...