qwq求助
查看原帖
qwq求助
1211305
xupeijing_is_king楼主2025/6/21 10:59

代码:

#include<bits/stdc++.h>
using namespace std;
int b[10005],a[105],dp[10005],n,m,vmax,ans;
int main(){
	cin>>n>>m;
	for(int i=0;i<m;i++) cin>>a[i];//通道 
	for(int i=0;i<n;i++) cin>>b[i];//关卡 
	dp[0]=b[0];//dp数组初始化 
	for(int i=0;i<m;i++){
		vmax=max(a[i],vmax);
		dp[a[i]]=b[a[i]]+b[0];
	}
	for(int i=vmax+1;i<n;i++){
		int nvmax=0;
		for(int j=0;j<m;j++)
			nvmax=max(nvmax,dp[i-a[j]]);
		dp[i]=nvmax+b[i];
	}
	int k=n-1;
	while(vmax--){
		ans=max(ans,dp[k]);
		k--;
	}
	cout<<ans;
	return 0;
}

求大佬(qwq)

2025/6/21 10:59
加载中...