#P8895. 「DPOI-1」优美的序列

    ID: 7765 Type: RemoteJudge 2500ms 512MiB Tried: 0 Accepted: 0 Difficulty: 3 Uploaded By: Tags>数学平衡树2022洛谷原创O2优化

「DPOI-1」优美的序列

题目背景

Update on 2022.12.18:新增一组针对
https://www.luogu.com.cn/user/421155

Update on 2022.12.18:新增一组针对 @大眼仔Happy 的 Hack 数据,放置于 #22,分值为 55 分。


不可以,总司令。

题目描述

总司令给你一个长为 nn 的序列 aa

他认为这个 aa 现在也许不够优美,他希望将其重排为一个 aa',使之变得优美。

我们称一个长为 nn 的序列 aa 优美,当且仅当 i[1,n]\exists i \in [1,n],满足:

  • j[1,i)\forall j \in [1, i)aj>aj+1a_j > a_{j + 1}
  • j(i,n]\forall j \in (i, n]aj>aj1a_j > a_{j - 1}

他命令你求出 aa 经过重排可以得到多少个不同的 aa'。由于结果可能很大,你只需要求出结果对 pp 取模的值。

由于一个固定的 aa 太无趣了,于是他给你 mm 次修改,每次修改形如 x k,表示令 axka_x \leftarrow k。你需要在每次修改后求出当前的答案。

输入格式

第一行,三个整数 n,m,pn, m, p

第二行,nn 个整数 a1,a2,,ana_1, a_2, \cdots, a_n

接下来 mm 行,每行两个整数 x,kx, k,表示一次修改操作。

输出格式

m+1m + 1 行,每行一个整数,表示初始状态下及每次修改后所求的值。

4 1 998244353
1 2 2 3
3 4
2
8
见下发文件 sequence2.in
见下发文件 sequence2.out

提示

样例 #1 解释

对于初始状态,满足条件的 aa'[2,1,2,3],[3,2,1,2][2, 1, 2, 3], [3, 2, 1, 2],共 22 个。

对于第一次修改后的 a=[1,2,4,3]a = [1, 2, 4, 3],满足条件的 aa' 有 $[1, 2, 3, 4], [2, 1, 3, 4], [3, 1, 2, 4], [4, 1, 2, 3], [3, 2, 1, 4], [4, 2, 1, 3], [4, 3, 1, 2], [4, 3, 2, 1]$,共 88 个。

样例 #2 解释

该样例满足测试点 152015 \sim 20 的限制。

数据范围

测试点编号 nn \leq mm \leq 特殊条件
121 \sim 2 1010
343 \sim 4 100100
565 \sim 6 10310^3
7107 \sim 10 10510^5
111211 \sim 12 5×1055 \times 10^5 00 aa 为一个排列
131413 \sim 14
152015 \sim 20 5×1055\times 10^5

对于 100%100\% 的数据,1n5×1051 \leq n \leq 5 \times 10^50m5×1050 \leq m \leq 5 \times 10^52p1092 \leq p \leq 10^91ai,k,xn1 \leq a_i, k, x \leq n