#YHCSPJMN150002. 优美序列
优美序列
优美序列
题目背景
在育华学校的算法竞赛集训中,T2之王遇到了一个关于序列重排的挑战。总司令要求将一个序列重排成"优美的序列",并计算有多少种不同的重排方式。每次修改序列元素后,还需要重新计算结果。
题目描述
给定一个长度为 的序列 ,可以将其重排为序列 。若存在位置 满足以下条件,则称 是"优美的":
- 对于所有 ,有 (左侧严格递减);
- 对于所有 ,有 (右侧严格递增)。
需要计算序列 经过重排后能形成多少个不同的优美序列,结果对 取模。此外,有 次修改操作(每次将 改为 ),每次修改后都需要重新计算答案。
输入格式
- 第一行:三个整数 ,分别表示序列长度、修改次数、取模值;
- 第二行: 个整数 ,表示初始序列;
- 接下来 行:每行两个整数 ,表示将第 个元素改为 。
输出格式
共 行,分别表示初始状态及每次修改后的答案(对 取模)。
样例
样例输入 1
4 1 998244353
1 2 2 3
3 4
样例输出 1
2
8
样例解释 1
- 初始序列为 [1, 2, 2, 3],优美序列有 2 个:[2, 1, 2, 3] 和 [3, 2, 1, 2];
- 修改后序列为 [1, 2, 4, 3],优美序列有 8 个,包括 [1, 2, 3, 4]、[2, 1, 3, 4] 等。
数据规模与测试点(育华学校专项)
测试点编号 | 特殊条件 | 考查目标 | ||
---|---|---|---|---|
#1~#2 | 10 | 无 | ||
#3~#4 | 100 | |||
#5~#6 | 10³ | |||
#7~#10 | 10⁵ | |||
#11~#12 | 5×10⁵ | 0 | 是排列 | |
#13~#14 | 无 | |||
#15~#20 | 5×10⁵ | |||
#21~#24 |
注:所有测试点均满足 ,。
相关
在下列比赛中: