dp
#include <cstdio>
const int N = 1005;
int f[N][N][2],h[N]; // 0 is left
int main()
{
int n;
scanf("%d",&n);
for (int i=1;i<=n;i++)
{
scanf("%d",&h[i]);
f[i][i][0] = 1;
}
const int mod = 19650827;
for (int l=1;l<n;l++)
for (int i=1,j=i+l;j<=n;i++,j++)
{
if (h[i] < h[i + 1])
f[i][j][0] = f[i + 1][j][0];
if (h[i] < h[j - 1])
(f[i][j][0] += f[i + 1][j][1]) %= mod;
if (h[j] > h[i])
f[i][j][1] = f[i][j - 1][0];
if (h[j] > h[j - 1])
(f[i][j][1] += f[i][j - 1][1]) %= mod;
}
printf("%d", (f[1][n][0] + f[1][n][1]) % mod);
return 0;
}