社区讨论

救我大佬们(必关!!!!!!!!1)

P1056[NOIP 2008 普及组] 排座椅参与者 3已保存回复 3

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
3 条
当前快照
1 份
快照标识符
@mjf4ygmt
此快照首次捕获于
2025/12/21 10:56
3 个月前
此快照最后确认于
2025/12/23 17:55
3 个月前
查看原帖
10分
CPP
#include<bits/stdc++.h>
using namespace std;
struct node{int id,num;}a[1005],b[1005];
int main()
{
	int m,n,k,l,d,a1,a2,b1,b2,hang[1005],lie[1005];
	cin>>m>>n>>k>>l>>d;
	while(d--)
	{
		cin>>a1>>a2>>b1>>b2;
		if(a1==a2) 
        a[b1].num++;
		else 
        b[a1].num++;
	}
	for(int i=1;i<=m;i++) 
    b[i].id=i;
	for(int i=1;i<=n;i++) 
    a[i].id=i;
	for(int i=1;i<=k;i++)
	{
		int mx=-1,pos=0;
		for(int j=1;j<=m;j++) 
        if(b[j].num>mx) 
        mx=b[j].num,pos=j;
		hang[i]=b[pos].id;
        b[pos].num=-1;
	}
	for(int i=1;i<=l;i++)
	{
		int mx=-1,pos=0;
		for(int j=1;j<=n;j++) 
        if(a[j].num>mx)
        mx=a[j].num,pos=j;
		lie[i]=a[pos].id;
        a[pos].num=-1;
	}
	sort(hang+1,hang+k+1);
    sort(lie+1,lie+l+1);
	for(int i=1;i<=k;i++) 
    cout<<hang[i]<<" ";cout<<endl;
	for(int i=1;i<=l;i++)
    cout<<lie[i]<<" ";
	return 0;
}

回复

3 条回复,欢迎继续交流。

正在加载回复...