re求
查看原帖
re求
1411360
j27eGU楼主2024/12/1 11:18
#include<bits/stdc++.h>
using namespace std;
struct t
{
	vector <int> out;
}a[50010];
struct pr
{
	vector <int> out;
	vector <int> num;
}pr;
void clear()
{
	for(int i=1;i<=50010;i++)a[i].out.clear();
	return ;
}
int main()
{
	int t;
	cin>>t;
	while(t--)
	{
		clear();
		int n,m;
		cin>>n>>m;
		for(int i=1;i<=m;i++)
		{
			int u,v;
			cin>>u>>v;
			a[u].out.push_back(v);
		}
		for(int i=1;i<=n;i++)
		{
			sort(a[i].out.begin(),a[i].out.end(),less<int>());
			for(int j=0;j<=a[i].out.size()-1;j++)
			{
				if(a[i].out.size()==0)break;
				pr.out.push_back(a[i].out[j]);
			}
			pr.num.push_back(a[i].out.size());
		}
	}
	for(int i=0,j=0;i<=pr.num.size()-1;i++)
	{
		int a=j+pr.num[i]-1;
		for(;j<=a;j++)
		{
			if(pr.num.size()==0)break;
			cout<<pr.out[j]<<" ";
		}
		cout<<endl;
	}
}

样例过了,但re

2024/12/1 11:18
加载中...