CF1067A.Array Without Local Maximums

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Ivan unexpectedly saw a present from one of his previous birthdays. It is array of nn numbers from 11 to 200200 . 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:

a1a2a_{1} \le a_{2} ,

anan1a_{n} \le a_{n-1} and

aimax(ai1,ai+1)a_{i} \le max(a_{i-1}, \,\, a_{i+1}) for all ii from 22 to n1n-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 11 to 200200 . Since the number of ways can be big, print it modulo 998244353998244353 .

输入格式

First line of input contains one integer nn ( 2n1052 \le n \le 10^{5} ) — size of the array.

Second line of input contains nn integers aia_{i} — elements of array. Either ai=1a_{i} = -1 or 1ai2001 \le a_{i} \le 200 . ai=1a_{i} = -1 means that ii -th element can't be read.

输出格式

Print number of ways to restore the array modulo 998244353998244353 .

输入输出样例

  • 输入#1

    3
    1 -1 2
    

    输出#1

    1
    
  • 输入#2

    2
    -1 -1
    

    输出#2

    200
    

说明/提示

In the first example, only possible value of a2a_{2} is 22 .

In the second example, a1=a2a_{1} = a_{2} so there are 200200 different values because all restored elements should be integers between 11 and 200200 .

首页