比赛 20190521热身赛 评测结果 AAAAAAAAAA
题目名称 挖水井 最终得分 100
用户昵称 海阔天空 运行时间 0.026 s
代码语言 C++ 内存使用 14.02 MiB
提交时间 2019-05-21 19:25:15
显示代码纯文本
#include <bits/stdc++.h>
using namespace std;
int n,p[305][305],w[305];
bool vis[305];

inline int read(){
	int x=0,w=1;
	char ch=getchar();
	for(;ch>'9'||ch<'0';ch=getchar())	if(ch=='-')	w=-1;
	for(;ch>='0'&&ch<='9';ch=getchar())	x=x*10+ch-'0';
	return x*w;
}

int main(){
    freopen("water.in","r",stdin);
    freopen("water.out","w",stdout);
	n=read();
	int minn;
	int cnt=0;
	int ans=0;
	for(int i=1;i<=n;i++)	w[i]=read();
	for(int i=1;i<=n;i++)
		for(int j=1;j<=n;j++)
			p[i][j]=read();
	for(int i=1;i<=n;i++){
		minn=0x7fffffff;
		for(int j=1;j<=n;j++)
			if(!vis[j] && w[j]<minn)	minn=w[j],cnt=j;
		ans+=minn,vis[cnt]=true;
		for(int j=1;j<=n;j++)
			if(!vis[j] && p[cnt][j]<w[j])	w[j]=p[cnt][j];
	}
	cout<<ans<<'\n';
	return 0;
}