Красивые битовые строки

Мы обожаем битовые строки. Особенно красивыми мы считаем те, в которых нет k подряд идущих нулей. Пусть у нас есть длина n. Сможете ли вы найти количество различных битовых строк длины n, которые удовлетворяют этому условию?

Входные данные

Во входных данных содержатся два целых числа n и k (1 ≤ k ≤ n ≤ 1000).

Выходные данные

Программа должна вывести количество красивых битовых строк длины n. Поскольку результат может быть очень большим, выведите его по модулю .

Примеры

Input
Output
5 2
24

Пояснение

  1. 00100
  1. 00101
  1. 00110
  1. 00111
  1. 01001
  1. 01010
  1. 01011
  1. 01100
  1. 01101
  1. 01110
  1. 01111
  1. 10010
  1. 10011
  1. 10100
  1. 10101
  1. 10110
  1. 10111
  1. 11001
  1. 11010
  1. 11011
  1. 11100
  1. 11101
  1. 11110
  1. 11111
 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue