Subseqüències de dígits P28329


Statement
 

pdf   zip

Una seqüència A=a1A = a_1-a2a_2-...-ama_m és una subseqüència d’una seqüència B=b1B = b_1-b2b_2-...-bnb_n, amb mnm \le n, si es pot aconseguir AA escollint mm posicions de BB, sense canviar-ne l’ordre relatiu. Per exemple, 4-2 és una subseqüència de 2-4-0-2, 1-19 és una subseqüència de 4-1-19, i 1-0-1-0-1-0 és una subseqüència de 1-1-0-1-0-0-1-0-0.

Sigui R(x,b)R(x, b) la representació d’un nombre natural xx en base bb, separant els dígits amb guions. Per exemple, R(42,10)=R(42, 10) = 4-2, R(42,23)=R(42, 23) = 1-19, i R(42,2)=R(42, 2) = 1-0-1-0-1-0.

Donats diversos parells de nombres naturals xx i yy, trobeu totes les bases bb per a les quals R(x,b)R(x, b) té almenys dos dígits i és una subseqüència d’R(y,b)R(y, b).

Entrada

L’entrada consisteix en diversos parells de naturals xx i yy, amb 1<x<y<1091 < x < y < 10^9.

Sortida

Per a cada cas, escriviu en ordre i separades amb espais totes les bases bb que compleixen la condició demanada. Amb les entrades donades, sempre n’hi haurà almenys una.

Observació

La vostra solució hauria d’implementar i fer servir una funció

    bool es_subsequencia(int x, int y, int b);

que digui si R(x,b)R(x, b) és una subseqüència d’R(y,b)R(y, b).

Public test cases
  • Input

    42 2402
    42 2158
    42 420
    3 32
    9461 151511189
    7 49
    

    Output

    2 4 8 10 40
    2 4 7 23
    2 3 10
    3
    2 4 7 8988 9202
    2 3 6 7
    
  • Information
    Author
    Salvador Roura
    Language
    Catalan
    Official solutions
    C++
    User solutions
    C++