Logo HelloWorld信息学奥赛题库

少儿编程

时间限制:1.5 s 空间限制:512 MB

#2867. 「LibreOJ β Round #7」匹配字符串

统计

题目描述

对于一个 01 串(即由字符 0 和 1 组成的字符串)$s$,我们称 $s$ 合法,当且仅当串 $s$ 的任意一个长度为 $m$ 的子串 $s'$,不为全 1 串。

请求出所有长度为 $n$ 的 01 串中,有多少合法的串,答案对 $65537$ 取模。

输入格式

输入共一行,包含两个正整数 $n,m$。

输出格式

输出共一行,表示所求的和对 $65537$ 取模的结果。

样例 1

input

5 2

output

13

以下是所有合法的串:

00000
00001
00010
00100
00101
01000
01001
01010
10000
10001
10010
10100
10101

样例 2

input

2018 7

output

27940

数据范围与提示

对于所有的数据,满足 $1\le n,m\le 68721573904$。

详细的数据限制及约定如下(留空表示和上述所有数据的约定相同):

Subtask # 分值 $n$ $m$
1 $6$ $\le 18$ $\le 18$
2 $7$ $\le 10^9$ $\le 2$
3 $15$ $\le 10^6$ $\le 10^6$
4 $10$ $\le 10^9$ $\le 50$
5 $14$ $\le 10^9$ $\le 500$
6 $15$ $\le 4295098369$ -
7 $18$ $\le 17180393476$ -
8 $15$ - -