66666666666666666666666

权威  •  7天前


include <bits/stdc++.h>

using namespace std; int a[22002],b[20200],f[1000005]; const int M=1e9; int main() {

int n,m;
cin>>n>>m;
for(int i=0;i<m;i++)
	cin>>a[i];
for(int i=0;i<n;i++)
	cin>>b[i];
for(int i=0;i<n<<1;i++){
	f[i]=-M;
}
f[0]=0;
for(int i=0;i<n<<1;i++){
	for(int j=0;j<m;j++){
		if(i>=a[j]){
			f[i]=max(f[i],f[i-a[j]]+b[i-a[j]]);
		}
	}
}
int ans=-1e9;
for(int i=n;i<n<<1;i++){
	ans=max(ans,f[i]);
}
cout<<ans;
return 0;

}


评论:

请先登录,才能进行评论