本文主要是介绍POJ 2624 Charm Bracelet DP(背包问题),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题意:Bessie去珠宝点里买镯子,现在有n只镯子,每只有有一个权重w,一个吸引力d。Bessie最多能拥有的权重为weight。求Bessie所能买得镯子的总吸引力的最大值。
#include<iostream>
#include<cstdlib>
using namespace std;int dp[12881], w[3403], v[3403];int main()
{int number,weight,i,j,temp;cin >> number >> weight;for ( i = 0; i < number; i++ )cin >> w[i] >> v[i];memset ( dp, 0, sizeof (dp) );for ( i = 0; i < number; i++ ){for ( j = weight; j >= w[i]; j-- ){temp = dp[j-w[i]] + v[i];if ( temp > dp[j] )dp[j] = temp;}}cout << dp[weight] << endl;return 0;
}
这篇关于POJ 2624 Charm Bracelet DP(背包问题)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!