#include<iostream>//https://vjudge.net/problem/UVA-562
#include<string>
#include<string.h>
using namespace std;
int dp[100000],a[100000];
int main()
{
int n,t;
cin>>t;
while(t--)
{
int sum=0;
cin>>n;
for(int i=0;i<n;i++)
{
cin>>a[i];
sum+=a[i];
}
memset(dp,0,sizeof(dp));
int c=sum/2;
for(int i=0;i<n;i++)
for(int j=c;j>=a[i];j--)
dp[j]=max(dp[j],dp[j-a[i]]+a[i]);
cout<<sum-2*dp[c]<<endl; //当装入的金币在sum/2最少的时候 最优
}
return 0;
}