爆0求调!!
查看原帖
爆0求调!!
831424
Tang_Tonghao楼主2025/7/26 11:31
#include <bits/stdc++.h>
using namespace std;
int n,m,ans,mk[400],cd[400],us[400],f[400];
int dfs(int now){
	if(f[now])	return f[now];
	int ma=mk[now];
	for(int i=1;i<=m;i++){
		if(us[i])	continue;
		us[i]=1;
		ma=max(ma,dfs(now+cd[i])+mk[now]);
		us[i]=0;
	}
	return f[now]=ma;
}
int main(){
	cin>>n>>m;
	for(int i=1;i<=n;i++){
		cin>>mk[i];
	}
	for(int i=1;i<=m;i++){
		cin>>cd[i];
	}
	//sort(cd+1,cd+m+1);
	cout<<dfs(1)<<endl;
	return 0;
}

怎么题解全是dp……一篇dfs都没有……

2025/7/26 11:31
加载中...