P4925 [1007] Scarlet 的字符串不可能这么可爱
题目描述
Scarlet 妄图构造字符集为 $k$,长度为 $L$ 的字符串,满足没有任何一个长度超过 $1$ 的回文连续子串。
看起来这样的字符串太多了,Scarlet 随手加了个限制:她指定了字符串的第 $s$ 位为 $w$。
这下 Scarlet 不会做了,请你来帮她计算究竟有多少满足条件的字符串。按照套路,你只要求出答案对 $p$ 取模后的结果。
输入格式
第一行三个整数 $k,L$ 和 $p$,分别表示构造的字符串的的字符集、长度和模数。
第二行两个整数 $s,w$,描述 Scarlet 给的限制。
**注意:$s=0$ 表示该数据点中 Scarlet 十分良心地没有添加限制。**
输出格式
一行一个整数,表示答案对 $p$ 取模后的结果。
说明/提示
字符集:一个字符串中不同字符的数量。例如,字符集是 $3$ 的话,你可以认为字符串仅由 $\texttt A$、$\texttt B$、$\texttt C$ 三个字母组成。
样例解释:第一个字符固定 $\texttt A$,那么符合要求的字符串是 $\texttt{ABC},\texttt{ACB}$。而 $\texttt{AAB}$ 字符串包括 $\texttt{AA}$ 这个回文子串,$\texttt{ACA}$ 本身就是回文串,以此类推。
对于 $50\%$ 的数据,$k\leq5$,$L\leq10$。
对于另 $30\%$ 的数据,$s=0$。
对于 $100\%$ 的数据,$1\leq k,L\leq 10^{18}$,$0\leq s\leq L$,$1\leq w\leq k$,$1\leq p\leq 10^9$。