题意:
玩过 的应该都懂,把所有数排序,以后找到小于等于 的位置然后一直往前减去,看看能不能减成 即可。
AC代码:
const int N = 110;
int n, m, t;
int a[N];
int main()
{
sd(t);
while (t--)
{
sd(n);
bool flag = 0;
m = 2048;
rep(i, 1, n)
sd(a[i]);
sort(a + 1, a + 1 + n);
per(i, n, 1)
{
if (a[i] > m)
continue;
m -= a[i];
if (m == 0)
{
flag = 1;
break;
}
}
if (flag)
puts("YES");
else
puts("NO");
}
return 0;
}