#include <cstdio>
#include <iostream>
#include <algorithm>
using namespace std;
const int Q=303;
const int MOD=998244353;
int f[2][Q*Q];
int g[Q*Q];
inline int add(int a,int b)
{a+=b;return a>=MOD?a-MOD:a;}
inline int sub(int a,int b)
{a-=b;return a<0?a+MOD:a;}
inline int mul(int a,int b)
{return 1LL*a*b%MOD;}
inline void Add(int &a,int b)
{a+=b;a>=MOD?a-=MOD:1;}
int main()
{
    int sm=0,n;
    f[0][0]=1;
    int now=0,lst=1;
    scanf("%d",&n);
    g[0]=1;
    for(int i=1,val;i<=n;i++){
        now^=1,lst^=1;
        scanf("%d",&val);
        for(int j=0;j<=sm;j++)
            f[now][j]=mul(2,f[lst][j]);
        for(int j=sm+1;j<=sm+val;j++)f[now][j]=0;
        for(int j=0;j<=sm;j++)
            Add(f[now][j+val],f[lst][j]);
        sm+=val;
        for(int j=sm-val;j>=0;--j)
            Add(g[j+val],g[j]);
    }
    int als=1;
    for(int i=1;i<=n;i++)als=mul(als,3);
    for(int i=(sm+1)/2;i<=sm;i++)
        als=sub(als,mul(3,f[now][i]));
    if(sm%2==0)als=add(als,mul(3,g[sm/2]));
    printf("%d",als);
    return 0;
}