Informática Intermediário – Semana 50 – Problema 1

por

Bits 2

 

Duas sequências de $$N$$ bits são distintas se, para alguma posição $$i$$, $$1\leq i\leq N$$, o bit na posição $$i$$ de uma sequência é distinto no bit na posição $$i$$ da outra sequência. As duas sequências de $$N = 10$$ bits abaixo são distintas pois, por exemplo, os bits na posição 7, da esquerda para a direita são distintos:

28

Mas veja que as duas sequências acima, apesar de distintas, têm uma característica em comum: não há três bits 1 consecutivos nelas. Neste problema, dado o número de bits $$N$$ e um $$K$$, seu programa deve computar quantas sequências distintas de $$N$$ bits existem, nas quais não há $$K$$ bits 1 consecutivos.

Entrada

A entrada consiste de uma linha contendo os dois inteiros $$N$$ ($$1 \leq N \leq 10^5$$) e $$K$$ ($$1\leq K\leq N+1$$).

Saída

Imprima uma linha contendo um inteiro, representando o número de sequências distintas de $$N$$ bits, nas quais não há $$K$$ bits 1 consecutivos. Porque esse número pode ser muito grande, você deve imprimir o resto da divisão dele por $$10^9 + 7$$

ENTRADA SAÍDA
4 2 8
10 3 504

OBS: O problema Bits da OBI possuí diferenças no limite de cada número.

Comentários

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *