poj 3624 Charm Bracelet

最裸的0/1揹包

#include<stdio.h>
#include<string.h>
const int max_size=13881;
int c[max_size],dp[max_size],v[max_size];
int num,weigh;
void Dp()
{
	int i,j;
	for(i=0;i<num;i++)
		for(j=weigh;j>=c[i];j--)
			if(dp[j-c[i]]+v[i]>dp[j])
				dp[j]=dp[j-c[i]]+v[i];

}
void work()
{
	scanf("%d%d",&num,&weigh);
	for(int i=0;i<num;i++)
		scanf("%d%d",&c[i],&v[i]);
	Dp();
	printf("%d\n",dp[weigh]);
}
int main()
{
	work();
	return 0;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章