#include <stdio.h> #include <string.h> #include <algorithm> #define max(a,b) a>b?a:b using namespace std ; int main() { int num[25] ; int dp[100005] ; int i, j, n ; while(~scanf("%d", &n)) { memset(dp, 0,sizeof(dp)) ; int sum = 0 ; for(i=0; i<n; i++) { scanf("%d",&num[i]) ; sum += num[i] ; } for(i=0; i<n; i++) { for(j = sum/2; j >= num[i]; j--) { dp[j] = max(dp[j], dp[j-num[i]]+num[i]) ; } } printf("%d\n", sum - 2*dp[sum/2]) ; } return 0 ; }
浙公网安备 33010602011771号