5564 陶陶摘苹果2
时间限制: 1 s 空间限制: 16000 KB 题目等级 : 白银 Silver
题目描述 Description
陶陶已经够高摘到所有苹果了,但是他力量有限,最大承受质量为Q kg,有K个苹果,每个苹果有自己的价值和质量,请你帮陶陶看看怎么摘能够价值最大。
输入描述 Input Description
两个整数Q,K,代表最大承受,苹果的数量。
以下k行,两个整数w,v,代表每个苹果的质量和价值。
数据范围及提示 Data Size & Hint
对于100%的数据 Q≤100 K≤1000 V,W≤100
1 #include<iostream>
2 #include<cstring>
3 #include<cstdio>
4 using namespace std;
5 int m,n,w[1005],v[1005],f[105];
6 int main()
7 {
8 scanf("%d%d",&m,&n);
9 for(int i=1;i<=n;i++)
10 scanf("%d%d",&w[i],&v[i]);
11 for(int i=1;i<=n;i++){
12 for(int j=m;j>=w[i];j--){
13 f[j]=max(f[j],f[j-w[i]]+v[i]);
14 }
15 }
16 printf("%d",f[m]);
17 return 0;
18 }
原文:http://www.cnblogs.com/suishiguang/p/6337319.html