#include <stdio.h>
#include <string.h>
int main()
{
int n;
int a[100];
for (int i
= 0; i
< n
; scanf("%d", &a
[i
++])); long long int c[21] = { 0 };
long long int copy[21] = { 0 };
c[a[0]]++;
for (int i = 2; i < n; i++)
{
memset(copy
, 0, sizeof(copy
)); for (int j = 0; j < 21; j++)
{
if (a[i-1] != 0)
{
if (c[j])
{
if (j + a[i - 1] < 21)
copy[j + a[i - 1]] += c[j];
if (j - a[i - 1] >= 0)
copy[j - a[i - 1]] += c[j];
copy[j] -= c[j];
}
}
}
for (int j = 0; j < 21; j++)
{
c[j] += copy[j];
}
}
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdHJpbmcuaD4KaW50IG1haW4oKQp7CglpbnQgbjsKCWludCBhWzEwMF07CglzY2FuZigiJWQiLCAmbik7Cglmb3IgKGludCBpID0gMDsgaSA8IG47IHNjYW5mKCIlZCIsICZhW2krK10pKTsKCWxvbmcgbG9uZyBpbnQgY1syMV0gPSB7IDAgfTsKCWxvbmcgbG9uZyBpbnQgY29weVsyMV0gPSB7IDAgfTsKCWNbYVswXV0rKzsKCWZvciAoaW50IGkgPSAyOyBpIDwgbjsgaSsrKQoJewoJCW1lbXNldChjb3B5LCAwLCBzaXplb2YoY29weSkpOwoJCWZvciAoaW50IGogPSAwOyBqIDwgMjE7IGorKykKCQl7CgkJCWlmIChhW2ktMV0gIT0gMCkKCQkJewoJCQkJaWYgKGNbal0pCgkJCQl7CgkJCQkJaWYgKGogKyBhW2kgLSAxXSA8IDIxKQoJCQkJCQljb3B5W2ogKyBhW2kgLSAxXV0gKz0gY1tqXTsKCQkJCQlpZiAoaiAtIGFbaSAtIDFdID49IDApCgkJCQkJCWNvcHlbaiAtIGFbaSAtIDFdXSArPSBjW2pdOwoJCQkJCWNvcHlbal0gLT0gY1tqXTsKCQkJCX0KCQkJfQoJCX0KCQlmb3IgKGludCBqID0gMDsgaiA8IDIxOyBqKyspCgkJewoJCQljW2pdICs9IGNvcHlbal07CgkJfQoJfQoJcHJpbnRmKCIlbGxkIiwgY1thW24gLSAxXV0pOwp9