标签:integer compute tar art ios ++ names sam com
2 10 1 20 1 3 10 1 20 2 30 1 -1
20 10 40 40
1 #include <iostream> 2 #include<cstdio> 3 #include<algorithm> 4 #include<cstring> 5 #include<cmath> 6 using namespace std; 7 8 int a[5005]; 9 int dp[250005]; 10 11 int main() 12 { 13 int n,v,s,value,value1; 14 while(~scanf("%d",&n)&&n>=0) 15 { 16 value=0; 17 int j=0; 18 for(int i=1;i<=n;i++) 19 { 20 scanf("%d%d",&v,&s); 21 while(s--) 22 { 23 a[j]=v; 24 j++; 25 value+=v; 26 } 27 } 28 value1=value; 29 value/=2; 30 memset(dp,0,sizeof(dp)); 31 for(int i=0;i<j;i++) 32 { 33 for(int k=value;k>=a[i];k--) 34 { 35 dp[k]=max(dp[k],dp[k-a[i]]+a[i]); 36 } 37 } 38 printf("%d %d\n",value1-dp[value],dp[value]); 39 } 40 return 0; 41 }
【01背包】HDU 1171 Big Event in HDU
标签:integer compute tar art ios ++ names sam com
原文地址:http://www.cnblogs.com/Annetree/p/6058356.html