Avançado Informática - Semana 32

Serrote

Uma permutação dos N primeiros naturais, (x_1,x_2, ... ,x_N), é um serrote de tamanho N com K dentes se e somente se existem exatamente K índicesi, 1 < i < N, tal que x_{i-1} < x_i e x_i > x_{i+1}. A figura abaixo ilustra, da esquerda para a direita, três serrotes de tamanho 9, com respectivamente 3, 1 e 4 dentes. Dados N e K, compute quantos serrotes existem de tamanho N com exatamente K dentes.

 

 

Entrada

A única linha da entrada contém dois inteiros, N e K.

Saída

Seu programa deve produzir uma única linha, contendo um inteiro, o número de serrotes de tamanho N com exatamente K dentes. Como esse número pode ser muito grande, imprima o resto da divisão dele por 10^9+7.

Restrições

  • 3 \leq N ? 1000 e 0 \leq K \leq N

Informações sobre a pontuação

  • Em um conjunto de casos de teste cuja soma é 20 pontos: N \leq 10

Exemplos

Entrada

3 0
Saída

4

 

Entrada

10 5
Saída

0

 

Entrada

10 2
Saída

1304832