#P15225. [2026队内训练]after two months

    ID: 14441 传统题 2000ms 1024MiB 尝试: 1 已通过: 1 难度: 6 上传者: 标签>CF2000动态规划单调栈前缀和计数DP

[2026队内训练]after two months

题目背景

一位 OIer Cu 后变成了 whker,这是他身体发生的变化。

题目描述

Displace Cu 了,于是他滚回whk。

数学课上,老师在黑板上写了一个 11nn 的排列,Displace 看着那个排列陷入沉思,回忆起以前做计数DP的时光,于是他整了个计数题。

Displace 可以进行任意次操作,每次操作为选取两个相邻的数,把较小的变为较大的。他想知道,最后可能得到的序列有多少种。

两个序列是不同的,当且仅当存在一个位置两个序列这个位置上的数不同。

由于答案可能很大,需要对 998244353 取模。

输入格式

第一行一个整数 nn ,意义同题目。

第二行 nn 个整数,保证是 11nn 的排列。

输出格式

一行一个整数,表示对 998244353 取模后的答案。

样例

输入样例1:

3
1 3 2

输出样例1:

4

样例1解释:

一共有4中可以得到的序列:(1,3,2),(3,3,2),(1,3,3),(3,3,3)(1,3,2),(3,3,2),(1,3,3),(3,3,3)

其他样例见下发文件。

数据范围

对于20%的数据,n8n\leq8

对于50%的数据,n300n\leq 300

对于另外20%的数据,保证给出的排列单调递增。

对于100%的数据,n5000n\leq5000