昨天ABC F求调
  • 板块学术版
  • 楼主Miracle_InDream
  • 当前回复2
  • 已保存回复2
  • 发布时间2024/9/29 07:22
  • 上次更新2024/9/29 14:59:51
查看原帖
昨天ABC F求调
955954
Miracle_InDream楼主2024/9/29 07:22
#include<bits/stdc++.h>
using namespace std;
long long n,w;
long long v[3005],c[3005];
long long dp[9000005];
long long dp2[9000005];
long long k[3005];
int main()
{
	cin>>n>>w;
	for(int i=1;i<=n;i++)
	{
		cin>>v[i]>>c[i];
	}
	for(int i=1;i<=n;i++)
	{
		for(int j=v[i];j<=w;j++)
		{
			k[i]++;
			dp[j]=max(dp[j],dp2[j-v[i]*k[i]]+k[i]*c[i]-k[i]*k[i]);
		}
		for(int j=v[i];j<=w;j++)
		{
			dp2[j]=dp[j];
		}
	}
	cout<<dp[w];
	return 0;
}
2024/9/29 07:22
加载中...