#include #include #include using namespace std; #define INFTY INT_MAX int nstone; int S[20]; int minDiff; int totalWeight; void rec( int cursor, int sum ) { const int rem = totalWeight - sum; const int diff = abs(rem - sum); if ( diff < minDiff ) minDiff = diff; if ( sum > rem ) return; if ( cursor == nstone ) return; rec(cursor+1, sum+S[cursor]); rec(cursor+1, sum); } int main() { cin >> nstone; for ( int i = 0; i < nstone; i++ ) cin >> S[i]; totalWeight = 0; for ( int i = 0; i < nstone; i++ ) totalWeight += S[i]; minDiff = INFTY; rec(0, 0); cout << minDiff << endl; return 0; }