玄关,求调
查看原帖
玄关,求调
1362612
Billy_L楼主2024/11/30 20:27

请大佬出手相救

#include<bits/stdc++.h>
using namespace std;
long long n,m,p[352],vis[352],ps,max_ps;
bool use[352];
void dp(long long t,long long x){
	if(x==0){
		max_ps=max(ps,max_ps);
		return;
	}
	for(long long i=1;i<=m;i++){
		if(use[i]) continue;
		ps+=p[vis[i]+t];
		use[i]=1;
		dp(t+vis[i],x-1);
		ps-=p[vis[i]+t];
		use[i]=0;
	}
}
signed main(){
	ios::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
    cin>>n>>m;
	for(long long i=1;i<=n;i++)cin>>p[i];
	for(long long i=1;i<=m;i++)cin>>vis[i];
	ps+=p[1];
	dp(1,m);
	cout<<max_ps;
    return 0;
}
2024/11/30 20:27
加载中...