【关于01背包】求助站外题
  • 板块灌水区
  • 楼主Butterfly__qwq
  • 当前回复11
  • 已保存回复11
  • 发布时间2022/3/23 13:49
  • 上次更新2023/10/28 05:53:06
查看原帖
【关于01背包】求助站外题
529038
Butterfly__qwq楼主2022/3/23 13:49

题目描述

nn种物品,每种物品只有一个。第ii种物品的体积为viv_{i},价值为wiw_{i}。选一些物品装到容量为CC的背包中,问最大的价值是多少?

输入格式

第一行,输入n,cn,c

第2至n+1n+1行,输入这nn个物品的体积vv和价值ww

输出格式

一个整数,表示最大价值

数据规模与约定

对于100100%的数据,0<n<200,0<vi<10000,0<C<10000,0<W<100000<n<200,0<v_i<10000,0<C<10000,0<W<10000

Code:

#include<bits/stdc++.h>
using namespace std;
int v[101],w[101],dp[10001];
int main()
{
	int n,c;
	cin>>n>>c;
	for(int i=0;i<n;i++)cin>>v[i]>>w[i];
	for(int i=0;i<n;i++)
		for(int j=c-1;j>=v[i]-1;j--)dp[j]=max(dp[j],dp[j-v[i]]+w[i]);
	cout<<dp[c-1];
	return 0;
}

Hack:

2 0
-1000 -10000
500 20000

正确答案:10000
我的结果:RE
2022/3/23 13:49
加载中...