Transformacions de paraules P19888


Statement
 

pdf   zip

thehtml

Feu un programa que modifiqui (com a molt) r vegades una paraula inicial p usant unes quantes trasformacions ab. Cada transformació indica que si p conté la subparaula a, llavors a es pot substituir per b.

Entrada

L’entrada comença amb la paraula p. A continuació ve un nombre n ≥ 1, seguit de n parells de paraules a i b (diferents i de la mateixa longitud). L’entrada acaba amb un natural r ≥ 1. Les paraules de cada parell mai no són més llargues que p.

Sortida

Escriviu els resultats d’aplicar r vegades la primera de les transformacions donades que sigui possible en cada moment. Si la mateixa transformació es pot aplicar a més d’una posició, escolliu la de més a l’esquerra. El programa ha de deixar d’escriure si en algun moment no pot aplicar cap transformació més.

Public test cases
  • Input

    aaaaabbbaaa
    3
    aaa xxx
    bb yy
    aa zz
    4
    

    Output

    xxxaabbbaaa
    xxxaabbbxxx
    xxxaayybxxx
    xxxzzyybxxx
    
  • Input

    abracadabra
    3
    y x
    baca yyyy
    ra ba
    4
    

    Output

    abbacadabra
    abyyyydabra
    abxyyydabra
    abxxyydabra
    
  • Input

    a
    1
    b c
    1
    

    Output

    
            
                                
  • Input

    potato
    2
    potato patata
    po zz
    1000000000
    

    Output

    patata
    
  • Information
    Author
    Salvador Roura
    Language
    Catalan
    Official solutions
    C++
    User solutions
    C++