Parèntesis i claudàtors P36384


Statement
 

pdf   zip

html

Suposeu que disposeu de x parells de parèntesis i de y parells de claudàtors (parèntesis quadrats). De quantes maneres podeu parentitzar correctament?

Per exemple, amb x = 2 i y = 1 hi ha 15 maneres:

  ()()[]     ()[()]     (()[])     ([()])     [()]()   
  ()([])     (())[]     (([]))     []()()     [()()]   
  ()[]()     ([])()     ([]())     [](())     [(())]   

Com que el número de combinacions creix molt de pressa amb x i y, feu els càlculs mòdul un natural donat m.

Entrada

L’entrada consisteix en diversos casos. Cada cas té x, y i m. Suposeu 0 ≤ x ≤ 50, 0 ≤ y ≤ 50, i 2 ≤ m ≤ 108.

Sortida

Per a cada cas, escriviu el nombre de parentitzacions correctes amb x parells de parèntesis i y parells de claudàtors, mòdul m.

Pista

Considereu on tanca el primer símbol.

Public test cases
  • Input

    2 1 1000000
    1 2 1000000
    1 2 4
    0 0 1000000
    1 0 1000000
    2 0 1000000
    3 0 1000000
    6 6 100000000
    6 6 1000
    50 50 100000000
    

    Output

    15
    15
    3
    1
    1
    2
    5
    92203088
    88
    24825920
    
  • Information
    Author
    Salvador Roura
    Language
    Catalan
    Other languages
    English
    Official solutions
    C++
    User solutions
    C++