A. Array Without Local Maximums
dp
Ivan unexpectedly saw a present from one of his previous birthdays. It is array of \(n\) numbers from \(1\) to \(200\). Array is old and some numbers are hard to read. Ivan remembers that for all elements at least one of its neighbours ls not less than it, more formally:\(a_{1} \le a_{2}\),\(a_{n} \le a_{n-1}\) and\(a_{i} \le max(a_{i-1}, \,\, a_{i+1})\) for all \(i\) from \(2\) to \(n-1\).Ivan does not remember the array and asks to find the number of ways to restore it. Restored elements also should be integers from \(1\) to \(200\). Since the number of ways can be big, print it modulo \(998244353\).
First line of input contains one integer \(n\) (\(2 \le n \le 10^{5}\)) — size of the array.Second line of input contains \(n\) integers \(a_{i}\) — elements of array. Either \(a_{i} = -1\) or \(1 \le a_{i} \le 200\). \(a_{i} = -1\) means that \(i\)-th element can't be read.
Print number of ways to restore the array modulo \(998244353\).
In the first example, only possible value of \(a_{2}\) is \(2\).In the second example, \(a_{1} = a_{2}\) so there are \(200\) different values because all restored elements should be integers between \(1\) and \(200\).