求助题目
  • 板块灌水区
  • 楼主hwwqy
  • 当前回复1
  • 已保存回复1
  • 发布时间2021/7/28 00:16
  • 上次更新2023/11/4 13:05:45
查看原帖
求助题目
363669
hwwqy楼主2021/7/28 00:16

P1776宝物筛选

#include<bits/stdc++.h>
using namespace std;
int f[105][400005];
int n,W;
int v[105],w[105],m[105];
void get()
{
	scanf("%d%d",&n,&W);
	for(int i=1;i<=n;i++)
	{
		scanf("%d%d%d",&v[i],&w[i],&m[i]);	
	}
}
void solve()
{
	for(int i=1;i<=n;i++)
	{
		for(int j=W;j>=w[i];j--)
		{
			for(int k=1;k<=m[i];k++)
			{
				if(k*w[i]>=W)break;
				f[i][j]=max(f[i-1][j],f[i-1][j-k*w[i]]+v[i]*k);		
			}	
		}	
	}
	printf("%d",f[n][W]);	
}
int main()
{
	get();
	solve();	
    return 0;
}

我觉得应该没问题啊,可是连样例也过不了

2021/7/28 00:16
加载中...