Uva 562 背包DP

来源:互联网 发布:优化实践技能 编辑:程序博客网 时间:2024/05/20 11:46

超级水题。。。。

AC代码如下:

#include <iostream>#include <cstdio>#include <cstring>#include <string>#include <algorithm>using namespace std;int dp[100000];int main(){int sum, N, T;int value[100];cin >> T;while( T-- ){cin >> N;sum = 0;memset( dp, 0, sizeof( dp ) );for( int i = 0; i < N; i++ ){cin >> value[i];sum += value[i];}for( int i = 0; i < N; i++ ){for( int j = sum / 2; j >= value[i]; j-- ){dp[j] = max( dp[j], dp[j-value[i]] + value[i] );}}cout << abs( sum - 2 * dp[sum/2] ) << endl;}return 0;}


 

原创粉丝点击