#P14459. [ICPC 2025 Xi'an R] Mystique as Iris
[ICPC 2025 Xi'an R] Mystique as Iris
Description
对于一个由正整数组成的数组 ,定义以下两步操作为一次操作:
- 选择 中任意两个相邻的元素,将其中一个减去 ,并将另一个置为 ;
- 从 中移除所有的 。
如果数组 能够在有限次(可能为 次)操作后被完全清空(即变为空序列),则称数组 是 神秘的。
现给定一个长度为 的整数数组 ,以及一个整数 。数组 中的每个元素要么是 到 之间的整数,要么是 。你的任务是将数组 中所有的 替换为 到 之间的任意整数。
请计算经过替换后,能够成为神秘数组的不同数组 的数量。由于答案可能非常大,请输出对 取模的结果。
Input Format
输入的第一行包含两个整数 和 (,)。
第二行包含 个整数 ( 或 )。
Output Format
输出一个整数,表示可以得到的不同神秘序列 的数量,对 取模。
2 2
-1 -1
3
6 10
-1 -1 -1 -1 1 7
9125
Hint
在第一个测试中,数组 。将两个 替换后,其中一种可能是 。此时我们选择相邻的两个数:将第一个数减去 ,并将第二个数置为 ,得到 。移除所有的 后,序列变为空,因此 是一个神秘数组。
同样地,如果将 替换为 或 ,这两种序列也都可以被化简为空。因此,共有 种不同的神秘序列。
翻译由 ChatGPT-5 完成
京公网安备 11011102002149号