听取WA声一片...... *_*
查看原帖
听取WA声一片...... *_*
1212152
JHT11楼主2025/7/26 14:24
#include<bits/stdc++.h>
using namespace std;
const int N=5003;
const int M=2e5+5;
int fa[N];
int n,m,ans,cnt;
int yh[503][503];
struct edge{
	int u,v;
	bool operator <(const edge &t)const
	{return u<t.u;}
}e[503][503];
int find(int x)
{
	if(fa[x]==x)
		return x;
	return fa[x]=find(fa[x]);
}
void Kru()
{
	for(int i=1;i<=m;i++)
		sort(e[i],e[i]+m);
	int minn=M;
	for(int i=1;i<=m;i++)
	{
		int pos=0;
		for(int j=1;j<=m;j++)
		{
			if(j==i)
				continue;
			for(int k=1;k<=m;k++)
			{
				if(e[i][j].v==k)
				{
					pos+=e[i][j].u;
					break;
				}
			}
			
		}
		if(pos<minn)
			minn=pos;
	}
	cout <<minn+n;
}
int main()
{
	cin >>n >>m;
	for(int i=1;i<=m;i++)
	{
		for(int j=1;j<=m;j++)
		{
			cin >>e[i][j].u;
			e[i][j].v=j;
			if(e[i][j].u==0)
				e[i][j].u=n;
		}
	}
	Kru();
	return 0;
 } 

Why???

2025/7/26 14:24
加载中...