[深搜]A. 【例题1】拔河比赛
A . 【 例 题 1 】 拔 河 比 赛 A. 【例题1】拔河比赛 A.【例题1】拔河比赛
解析
模板题,选与不选
Code
#include <bits/stdc++.h>
#define ll long long
using namespace std;
int w[25];
int t, n, ans, sum;
void dfs (int x, int y, int z)
{
if (y == n / 2)
{
ans = min (ans, abs (z * 2 - sum));
return ;
}
if (x > n) return ;
dfs (x + 1, y + 1, z + w[x]);
dfs (x + 1, y, z);
}
int main ()
{
scanf ("%d", &t);
while (t --)
{
sum = ans = 0;
scanf ("%d", &n);
for (int i = 1; i <= n; ++ i) scanf ("%d", &w[i]), sum += w[i];
ans = sum;
dfs (1, 0, 0);
printf ("%d\n", ans);
}
return 0;
}