Nombre unidígit P77392


Statement
 

pdf   zip

Un nombre nn es diu que és unidígit en base bb si tots els dígits de la seva representació tenen el mateix valor, és a dir, es pot representar com n=dbk+dbk1++db+d=d(bk+bk1++b+1)n = d\cdot b^k + d\cdot b^{k-1} + \cdots + d\cdot b + d = d \cdot (b^k + b^{k-1} + \cdots + b + 1) per algun valor de kk i amb d<bd < b.

Per exemple, 777 és unidígit en base 10, 15 és unidígit en base 2 (representació binària: 1111) i 2324517 és unidígit en base 56, atès que 2324517=13(563+562+56+1).2324517 = 13 \cdot (56^3 + 56^2 + 56 + 1).

Observacions: tots els nombres 0,,b10,\ldots,b-1 són unidígit en base bb (i només tenen un dígit) i tot nombre n3n\geq 3 es pot representar en base n1n-1 com a 11.

Feu un programa que, donada una seqüència de nombres naturals, per a cada nombre escrigui la base b2b\geq 2 més petita amb la que es pot representar com un nombre unidígit i el dígit dd d’aquella representació.

Public test cases
  • Input

    777
    2324517
    0
    1
    2
    3
    9834577365
    9999

    Output

    6 3
    56 13
    2 0
    2 1
    3 2
    2 1
    105696 93045
    10 9
    
  • Information
    Author
    Jordi Cortadella
    Language
    Catalan
    Official solutions
    Python
    User solutions
    Python