[1007] Scarlet的字符串不可能这么可爱
题目描述
Scarlet妄图构造字符集为 k k k,长度为 L L L的字符串,满足没有任何一个长度超过 1 1 1的回文连续子串。
看起来这样的字符串太多了,Scarlet随手加了个限制:她指定了字符串的第 s s s位为 w w w。
这下Scarlet不会做了,请你来帮她计算究竟有多少满足条件的字符串。按照套路,你只要求出答案对 p p p取模后的结果。
输入格式
第一行三个整数 k , L k,L k,L和 p p p,分别表示构造的字符串的的字符集、长度和模数。
第二行两个整数 s , w s,w s,w,描述Scarlet给的限制。
注意: s = 0 s=0 s=0表示该数据点中Scarlet十分良心地没有添加限制
输出格式
一行一个整数,表示答案对 p p p的取模后的结果。
样例 #1
样例输入 #1
3 3 233
1 1
样例输出 #1
2
提示
字符集:一个字符串中不同字符的数量。例如,字符集是3的话,你可以认为字符串仅由“A”、“B”、“C”三个字母组成。
样例解释:第一个字符固定A,那么符合要求的字符串是ABC,ACB。而AAB字符串包括AA这个回文子串,ACA本身就是回文串,一次类推。
对于50%的数据, k ≤ 5 , L ≤ 10 k\leq5,L\leq10 k≤5,L≤10
对于另30%的数据, s = 0 s=0 s=0
对于100%的数据 1 ≤ k , L ≤ 1 0 18 , 0 ≤ s ≤ L , 1 ≤ w ≤ k , 1 ≤ p ≤ 1 0 9 1\leq k,L\leq 10^{18},0\leq s\leq L,1\leq w\leq k,1\leq p\leq 10^9 1≤k,L≤1018,0≤s≤L,1≤w≤k,1≤p≤109
Scratch实现
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NGCA6qmH-1722322721977)(https://i-blog.csdnimg.cn/direct/b7d411cda499411789ba42ad5df25f49.png)]
后续
接下来我会不断用scratch来实现信奥比赛中的算法题、Scratch考级编程题实现、白名单赛事考题实现,感兴趣的请关注,我后续将继续分享相关内容