比赛 CSP2022提高组 评测结果 AAAWWWWWAAAWWWAAAWTT
题目名称 假期计划 最终得分 45
用户昵称 akioi 运行时间 4.980 s
代码语言 C++ 内存使用 2.10 MiB
提交时间 2022-10-30 10:04:45
显示代码纯文本
//k==0 (10~45pts) 
#include<bits/stdc++.h>
using namespace std;
long long n,m,k,u,v,maxc=-1e18-1;
long long s[2505];
vector<long long>a[2505];
bool vis[2505];
void dfs(long long x,long long cnt,long long t){
	if(t>5)return;
	if(x==1&&t==5){
		maxc=max(maxc,cnt);
		return;
	}
	for(long long i=0;i<a[x].size();i++){
		if(!vis[a[x][i]]){
			vis[a[x][i]]=1;
			dfs(a[x][i],cnt+s[a[x][i]],t+1);
			vis[a[x][i]]=0;
		}
	}
	return;
}
int main(){
	freopen("csp2022_holiday.in","r",stdin);
	freopen("csp2022_holiday.out","w",stdout);
	cin>>n>>m>>k;
	for(int i=2;i<=n;i++)cin>>s[i];
	for(int i=1;i<=m;i++){
		cin>>u>>v;
		a[u].push_back(v);
		a[v].push_back(u);
	}
	for(int i=2;i<=n;i++)sort(a[i].begin(),a[i].end());
	dfs(1,0,0);
	cout<<maxc;
	return 0;
}