题目 1796

斐波那契串

查看题解 ↗GitHub ↗如何评测
题号
1796
时间限制
1000 ms
内存限制
256 MB
标签
数学
来源
信息学奥赛一本通 · 高手训练篇·六、数学基础(高手训练)

【题目描述】

小Z学起了斐波那契数列。 F[0]=0F[0]=0 F[1]=1F[1]=1 F[i]=F[i−2]+F[i−1]F[i]=F[i-2]+F[i-1] 小Z突发奇想,要是这个FF是一个stringstring类型该多有趣。 S[0]=“0”S[0]=“0” S[1]=“0”S[1]=“0” S[i]=S[i−2]S[i−1]S[i]=S[i-2]S[i-1] (表示连接S[i−2]S[i-2]和S[i−1]S[i-1]两个字符串)。 小Z经过科学的计算后发现S[N]S[N]会很长很长,但是他只想知道一个问题的答案,就是小Z心中的0/10/1串TT在S[N]S[N]中出现了多少次。 答案对PP取模。

【输入】

第一行三个整数N,M,PN,M,P,NN如题中所述,MM为串TT的长度,PP为需要取模的数。 第二行为一个长度为MM的0/10/1串。

【输出】

仅包含一个整数,为出现次数模PP之后的值。

【输入样例】

文本
7 3 100
101

【输出样例】

文本
8

【提示】

【数据规模】 对于30%的数据,N≤20N≤20。 对于60%的数据,N≤105,M≤200N≤10^5,M≤200。 对于100%的数据,N≤109,M≤10000,P≤109N≤10^9,M≤10000,P≤10^9。

数据下载

题目 1796 的公开数据

正在读取文件列表…

常用命令

题目 1796 的 ROJ 命令

以下命令默认使用全局安装的 ROJ Skill,请在终端中直接执行;如果修改过 AGENT_HOME,请将命令中的 ~/.agents 替换为对应目录。