P11681 [Algo Beat Contest 001 C] Creating a Queue

题目背景

| Problem | Score | Idea | Std | Data | Check | Solution | | :---------------------------------: | :---: | :---------------------------------------------------: | :----------------------------------------------------------: | :---------------------------------------------: | :----------------------------------------------------------: | :----------------------------------------------------------: | | $\text{C - Creating a Queue}$ | $400$ | [joe_zxq](https://www.luogu.com.cn/user/623577) | [fanchuanyu](https://www.luogu.com.cn/user/706256) & [joe_zxq](https://www.luogu.com.cn/user/623577) | [joe_zxq](https://www.luogu.com.cn/user/623577) | [remmymilkyway](https://www.luogu.com.cn/user/551981) | [Link](https://www.luogu.com.cn/article/7r5l2cag) by [joe_zxq](https://www.luogu.com.cn/user/623577) |

题目描述

给定一个长度为 $N$ 的非负整数序列 $A$。 现在你需要用 $1\sim M$ 之间的正整数替换所有序列 $A$ 中的 $0$,使得对于其中的任何一段长度大于等于 $2$ 的子数组,不能存在唯一众数。 > 子数组:在一个数组中,选择一些连续的元素组成的新数组。 > > 唯一众数:众数指的是一个数字序列中出现次数最多的元素。如果一个数字序列众数只有一个,我们称这个序列有唯一众数。 求有多少种不同方案,答案对 $1145141923$ 取模。两种方案称为不同,当且仅当替换后的序列至少有一位上的数不同。

输入格式

输出格式

说明/提示

#### 样例解释 #1 有 $2$ 个满足条件的序列,分别为 $\{1,2\}$ 和 $\{1,3\}$。 #### 样例解释 #2 序列已经完全固定,本身就是一种合法的序列,于是答案为 $1$。 #### 数据范围 对于 $100\%$ 的数据,保证 $1 \le N \le 10^6$,$1 \le M \le 10^9$,$0 \le A_i \le M$。