#ATagc058b. [AGC058B] Adjacent Chmax

[AGC058B] Adjacent Chmax

题目描述

给你一个 1n1 \sim n 的排列 PP ,你可以进行若干次如下操作,也可以不进行操作。

  • 每次选择一个整数 ii (1  i  N11\ \leq\ i\ \leq\ N-1) ,使 v=max(Pi,Pi+1)v=\max(P_i,P_{i+1}) ,然后将 PiP_iPi+1P_{i+1} 改为 vv

求问最后可能得到多少种不同的结果,答案对 998244353998244353 取模。

输入格式

第一行一行一个整数 NN

第二行 NN 个整数,第 ii 个数表示 PiP_i

输出格式

一行一个整数,多少种不同的结果。

样例 1

输入

3
1 3 2

输出

4

样例 2

输入

4
2 1 3 4

输出

11

样例 3

输入

10
4 9 6 3 8 10 1 2 7 5

输出

855

说明/提示

  • 2  N  50002\ \leq\ N\ \leq\ 5000
  • (P1,P2,,PN)(P_1,P_2,\cdots,P_N)(1,2,,N)(1,2,\cdots,N) 的排列
  • 输入均为整数

样例解释 1

操作后 PP 可能为 (1,3,2),(3,3,2),(1,3,3),(3,3,3)(1,3,2),(3,3,2),(1,3,3),(3,3,3)44 种结果。