HDU 2660 Accepted Necklace
2017-07-13 08:54
197 查看
Accepted Necklace
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Problem Description
I have N precious stones, and plan to use K of them to make a necklace for my mother, but she won’t accept a necklace which is too heavy. Given the value and the weight of each precious stone, please help me find out the most valuable necklace my mother will accept.
Input
The first line of input is the number of cases.
For each case, the first line contains two integers N (N <= 20), the total number of stones, and K (K <= N), the exact number of stones to make a necklace.
Then N lines follow, each containing two integers: a (a<=1000), representing the value of each precious stone, and b (b<=1000), its weight.
The last line of each case contains an integer W, the maximum weight my mother will accept, W <= 1000.
Output
For each case, output the highest possible value of the necklace.
Sample Input
1
2 1
1 1
1 1
3
Sample Output
1
Recommend
zty | We have carefully selected several similar problems for you: 1181 1035 1016 1258 1312
//二维费用背包 include<iostream> #include<cstring> #include<cstdio> using namespace std; int f[1005][25],w[25],v[25]; int n,m,weight; int max(int a,int b){ if(a>b) return a; else return b; } void DP(){ memset(f,0,sizeof f ); for(int i=1;i<=n;i++) for(int j=weight;j>=w[i];j--) for(int k=1;k<=m;k++) f[j][k]=max(f[j][k],f[j-w[i]][k-1]+v[i]); } int main(){ int Tests;cin>>Tests; while(Tests--){ scanf("%d%d",&n,&m); for(int i=1;i<=n;i++) scanf("%d%d",&v[i],&w[i]); scanf("%d",&weight); DP(); printf("%d\n",f[weight][m]); } return 0; }
相关文章推荐
- HDOJ(HDU).2660 Accepted Necklace (DFS)
- hdu 2660 Accepted Necklace dp / dfs
- 01背包变形 HDU 2660
- HDU 2660 Accepted Necklace
- 【DP】 HDU 2660 Accepted Necklace 限制背包
- hdu 2660 Accepted Necklace(01背包与dfs两种解法)
- hdu--2660--二维费用背包
- HDU 2660 Accepted Necklace (DFS)
- (step4.3.6)hdu 2660(Accepted Necklace)
- hdu 2660 Accepted Necklace
- 【DP】 HDU 2660 Accepted Necklace 限制背包
- hdu-2660 Accepted Necklace
- hdu 2660 Accepted Necklace (二维01背包)
- hdu 2660 Accepted Necklace(dp)
- hdu 2660 Accepted Necklace(01-背包变形 || DFS)
- hdu - 2660 Accepted Necklace (二维费用的背包问题)
- hdu 1342+hdu 2660+hdu 2266+hdu 1704+hdu 1627+hdu 1539
- HDU 2660 Accepted Necklace
- [HDU-2660] DFS
- hdu 2660 Accepted Necklace