Parèntesis i claudàtors P36384


Statement
 

pdf   zip

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

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

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

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

Entrada

L’entrada consisteix en diversos casos. Cada cas té xx, yy i mm. Suposeu 0x500 \le x \le 50, 0y500 \le y \le 50, i 2m1082 \le m \le 10^8.

Sortida

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

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++