dp-背包问题
Posted zhmlzhml
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了dp-背包问题相关的知识,希望对你有一定的参考价值。
1 #include "iostream" 2 #include "stdio.h" 3 using namespace std; 4 int w[105],val[105]; 5 int dp[105][1005]; 6 int main() 7 { 8 int t,m,res=-1; 9 scanf("%d%d",&t,&m); 10 for(int i=1;i<=m;i++) 11 { 12 scanf("%d%d",&w[i],&val[i]); 13 } 14 for(int i=1;i<=m;i++) 15 for(int j=t;j>=0;j--) 16 { 17 if(j>=w[i]) 18 { 19 dp[i][j]=max(dp[i-1][j-w[i]]+val[i],dp[i-1][j]); 20 } 21 else 22 { 23 dp[i][j]=dp[i-1][j]; 24 } 25 } 26 printf("%d",dp[m][t]); 27 return 0; 28 }
以上是关于dp-背包问题的主要内容,如果未能解决你的问题,请参考以下文章