Flauta india P86839


Statement
 

pdf   zip

Walker no solo cultiva el cuerpo: también cultiva el espíritu. Para ello, nada mejor que relajarse tocando una melodía con su flauta india navaja. Esta flauta puede hacer sonar nn notas distintas (desde la nota 00, hasta la nota n1n-1). Sin embargo, las reglas de composición melódica navajas son muy estrictas:

  • La primera nota de la melodía debe ser la nota 0.

  • La última nota de la melodía debe ser la nota n1n-1.

  • Cada nota tiene que ser exactamente la misma, una nota más o una nota menos que la anterior.

  • La misma nota no puede aparecer tres veces consecutivamente en la melodía.

Por ejemplo, las siguientes son melodías navajas de duración k=7k=7 que pueden tocarse con una flauta india de n=4n=4 notas:

0123233 \qquad 0011233 \qquad 0121123 \qquad 0100123

Por contra, las siguientes melodías navajas no son válidas, puesto que incumplen los 4 principios anterioreS:

1233233 \qquad 0123212 \qquad 0013223 \qquad 0122233

Se te pide que digas, dados los valores nn y kk, el número de melodías navajas distintas que Walker podría interpretar.

Entrada

La entrada contiene el número NN de casos en una línea, seguido de NN líneas con los números 1n201\le n\le 20 y 1k301\le k\le 30 de cada caso.

Salida

Escribe, para cada caso, el número de melodías navajas distintas de kk notas de duración que es posible interpretar con una flauta india de nn notas. Tu programa tiene 1 segundo de CPU para resolver cada entrada.

Puntuación

  • TestA:   Entradas con N20N\le 20, n=1n=1 y k10k\le 10, como el Ejemplo 1.

  • TestB:   Entradas con N20N\le 20, n2n \le 2 y k10k\le 10, como el Ejemplo 2.

  • TestC:   Entradas con N20N\le 20, n4n \le 4 y k10k\le 10, como el Ejemplo 3.

  • TestD:   Entradas con N20N\le 20, n8n \le 8 y k10k\le 10, como el Ejemplo 4.

  • TestE:   Entradas con N100N\le 100, n10n \le 10 y k20k\le 20, como el Ejemplo 5.

  • TestF:   Entradas con N100N\le 100, n20n \le 20 y k30k\le 30, como el Ejemplo 6.

  • TestG:   Entradas con N10000N\le 10000, n20n \le 20 y k30k\le 30.

Public test cases
  • Input

    2
    1 2
    1 10
    

    Output

    1
    0
    
  • Input

    4
    1 2
    2 2
    2 6
    2 10
    

    Output

    1
    1
    7
    44
    
  • Input

    3
    4 10
    3 10
    2 10
    

    Output

    290
    214
    44
    
  • Input

    2
    8 10
    6 10
    

    Output

    35
    174
    
  • Input

    2
    10 20
    5 20
    

    Output

    818528
    2108488
    
  • Input

    2
    20 30
    10 30
    

    Output

    64675289
    22397976711
    
  • Information
    Author
    Omer Giménez
    Language
    Spanish
    Official solutions
    C++
    User solutions
    C++