n=int(input()) A=list(map(int,input().split())) p=998244353 def kaimod(n,p): l=[1] a=1 for i in range(1,n+1): a=(a*i)%p l+=[a] b=pow(a,p-2,p) ll=[1]*(n+1) ll[n]=b for i in range(n-1,1,-1): b=(b*(i+1))%p ll[i]=b return([l,ll]) q=kaimod(a[0]+n,p) kai=q[0] kair=q[1] ans=2 for i in range(1,n-1): if A[i]>A[i+1]: ans=(ans+((kai[i+A[i]-1]*kair[i])%p)*kair[A[i]-1])%p print(ans)