样例没过,不知哪错
查看原帖
样例没过,不知哪错
700478
ZHOUJIECHEN楼主2023/11/28 22:18
using namespace std;
int n,ans,bagV;
int v[1000001];//数量 
int c[1000001];//价格
int dp[1000001];
int main()
{	
	cin>>n>>bagV;
		for(int i=1;i<=n;i++)
		{
			scanf("%d",&v[i]);
		}
		for(int i=1;i<=n;i++)
		{
			scanf("%d",&c[i]);
		}
		for(int i=1;i<=n;i++)
		{
			for(int k=1;k<=bagV;k<<=1)
			{
				int x=min(k,c[i]);
				for(int j=bagV;j>=0;j--)
				{
					dp[j]=max(dp[j],dp[j-x*v[i]]+v[i]*x);
				}
				c[i]-=x;
			}
		}
		cout<<dp[bagV];

}```
2023/11/28 22:18
加载中...