Otras páginas de Rodolfo Valeiras
Heureka!

Problemas con los números

Problemas

Número super-divisible

(a) Encontrar un número pandigital (un número que contiene las diez difras del 0 al 9 sin repetir ninguna) de forma que la primera cifra sea divisible por 1 (esto sucede siempre), el número formado por las dos primeras cifras sea divisible por 2, el número formado por las 3 primeras cifras sea divisible por 3, etc. El número completo tiene que ser divisible por 10.

(b) Encontrar un número, lo más grande que se pueda, en las mismas condiciones. Este sí puede (y debe) contener cifras repetidas.

Solución

Sietes

¿Cuáles son las dos últimas cifras de 7 elevado a 7 elevado a 7 elevado a 7, sin ningún paréntesis, es decir, 7777?

Solución

Un primo lejano

En el momento de escribir esto, el más grande número primo conocido es 220.996.011−1. ¿Cuántas cifras tiene? ¿Cuáles son las tres primeras cifras? ¿Y las tres últimas?

Solución

Tres números

Encontrar tres números de tres cifras distintas, los tres con las mismas cifras tales que uno de ellos sea la suma de los otros dos.

Solución

Matrícula al revés

La matrícula de un coche está formada por cinco cifras, todas diferentes. Al instalarla, el mecánico se equivocó, poniéndola «cabeza abajo». Posteriormente, al recoger el vehículo, el dueño se dio cuenta de que el número obtenido era mayor que el original en 78.633. ¿Cuál era el número de la matrícula?

Solución

Soluciones

Número super-divisible

(a) La única solución es el número 3816547290.

Las cifras que ocupan lugares pares tienen que ser pares, por ser pares los correspondientes números que terminan en ellas. Por tanto, las cifras que ocupan lugares impares tienen que ser impares.

I P I P I P I P I P
a b c d e f g h i j

La última cifra (j) tiene que ser 0 para que el número sea múltiplo de 10. La quinta cifra (e) tiene entonces que ser 5 para que hasta ahí sea múltiplo de 5.

I P I P 5 P I P I 0
a b c d e f g h i j

Por ser abcd múltiplo de 4, cd es también múltiplo de 4. Dejando sólo los de la forma IP y eliminando los que contienen 0 o 5 quedan las posibilidades para cd 12, 16, 32, 36, 72, 76, 92 y 96. En particular, d sólo puede valer 2 o 6.

Como tanto abc como abcdef son múltiplos de 3, d+e+f tiene que ser múltiplo de 3. Si d vale 2, f tiene que valer 8. Si d vale 6, f tiene que valer 4.

Por ser abcdefgh múltiplo de 8, fgh también es múltiplo de 8. Dejando sólo los de la forma 4IP y 8IP y eliminando los que contienen 0 o 5 o cifras repetidas quedan para fgh las posibilidades 416, 432, 472, 496, 816, 832, 872 y 896.

Se trata de ir probando los posibles valores de cd y de fgh. Una vez colocados estos se ve si quedan valores posibles para a y b de forma que a+b+c sea múltiplo de 3. Si es así, sólo queda probar si abcdefg se puede dividir por 7 (1+2+...+9=45 así que abcdefghi siempre es múltiplo de 9).

cd=12 => fgh=896 (único con f=8 que no contiene ni 1 ni 2) => b=4 (única cifra par que queda) => a=7 (para que a+b+c sea múltiplo de 3) => N=7412589630. Falla al dividir por 7.

cd=16 => fgh=432 o fgh=472.
    fgh=432 => b=8 => a=9. N=9816543270. Falla al dividir por 7.
    fgh=472 => b=8 => a=3 o a=9.
        a=3. N=3816547290. ¡También es divisible por 7! Esta es una solución.
        a=9. N=9816547230. Falla al dividir por 7.

cd=32 => fgh=816 o fgh=896.
    fgh=816 => b=4 => No queda valor posible para a.
    fgh=896 => b=4 => No queda valor posible para a.

De esta forma (que a mí no me parece tediosa) se siguen probando los demás valores, comprobándose que la solución encontrada es única. En el archivo de rec.puzzles se explica una solución un poco más corta añadiendo algunas otras consideraciones.

Referencias: 1 2 3 4 5 6 7 8

(b) El mayor número en esas condiciones es 3608528850368400786036725, de 25 cifras. El siguiente programa en UBASIC muestra todos los de 23 o más cifras.

   10   N=1:D=1
   20   M=modpow(N,1,D)
   30   if M=0 then N=N*10:D=D+1:goto 20
   40   if D-M<10 then N=N+D-M:M=0:goto 30
   50   if D>23 then print D-1;int(N/10)
   60   if N<10 then end
   70   N=int(N/10):D=D-1
   80   if D+modpow(N,1,10)<10 then N=N+D:M=0:goto 30
   90   goto 60
run
 23  12360600901222567200901
 24  144408645048225636603816
 23  24085888200010566020746
 25  3608528850368400786036725
 24  402852168072900828009216
 23  72645656402410567240820
OK

Sietes

Las dos últimas cifras de un número es su resto módulo 100 (lo que queda como resto al dividir por 100). Al multiplicar sucesivamente por 7 los restos módulo 100 van repitiéndose de forma cíclica:

exponente     | 0   1   2   3   4   5   6 ...
--------------+-------------------------------
resto mod 100 | 1   7  49  43   1   7  49 ...

Así que el el resto módulo 100 depende del resto módulo 4 del exponente. El exponente en nuestro caso es 777 y para saber su resto módulo 4 hay que hacer un análisis similar:

exponente     | 0   1   2   3   4   5 ...
--------------+---------------------------
resto mod 4   | 1   3   1   3   1   3 ...

El resto módulo 4 depende del resto módulo 2 del exponente. El exponente ahora es 77, que es impar (lo es cualquier producto de impares). Así que el resto módulo 4 de 777 es 3 y el resto módulo 100 de 7777es 43.

Como complemento, UBASIC lo resuelve rápidamente así:

? modpow(7,7^7^7,100)
 43
OK

Un primo lejano

Las tres primeras cifras y el número de cifras

El número 220.996.011 termina en una cifra par distinta de cero (como todas las potencias de dos a excepción de 20), así que tiene el mismo numero de cifras que 220.996.011−1. Además, las tres primeras cifras de 220.996.011−1 coinciden con las de 220.996.011. Tenemos (log es el logaritmo decimal; el signo ≈ representa aproximación):

220.996.011 = 10log 220.996.011 = 1020.996.011×log 2 ≈ 1020.996.011×0.301029995 = 106.320.429,086349945 = 106.320.429×100,086349945 ≈ 1,25×106.320.429.

Así que 220.996.011 y 220.996.011−1 son números de 6.320.430 cifras, siendo 125 las tres primeras.

Con este método se puede calcular una aproximación de cualquier potencia. Hay que tener en cuenta que estamos haciendo cálculos aproximados, mientras que el problema pide una respuesta exacta, así que hay que asegurarse de que se hacen los cálculos con la precisión necesaria. Por ejemplo, si usáramos 0,3010 como valor aproximado de log 2, obtendríamos que el número de cifras es de 6.319.800, lo cual es incorrecto.

Este método lo copié de un mensaje de Pablo Kaczor en la lista Snark.

Las tres últimas cifras

Se usará tuc(a) con el sentido de «tres últimas cifras de a», es decir, tuc(a) = a mod 1000. En general,

(a×b) mod m = ((a mod m)×(b mod m)) mod m,

y en este caso,

tuc(a×b) = tuc(tuc(atuc(b)).

Y también:

tuc(ab) = tuc(tuc(a)b).

Calculando directamente, 210 = 1024, así que tuc(210) = 24.

El cálculo de tuc(245) puede hacerse así:

242 = 576; 243 = 13.824.
tuc(244) = tuc(243×24) = tuc(824×24) = 776.
tuc(245) = tuc(244×24) = tuc(776×24) = 624.

Vamos a calcular ahora las tres últimas cifras de 2 elevado a 100:

tuc(2100) = tuc((210)10) = tuc(tuc(210)10) = tuc(2410) = tuc((245)2) = tuc(tuc(245)2) = tuc(6242) = 376.

Curiosamente, 376×376 = 141.376, de forma que tuc de cualquier potencia de 376 vale 376. Y ya es fácil calcular tuc(220.996.011):

tuc(220.996.011) = tuc(220.996×100+11) = tuc(tuc((2100)20.996tuc(211)) = tuc(tuc(37620.996tuc(211)) = tuc(376×48) = 48.

Y por último, nos pedían las tres últimas cifras de 220.996.011−1, que son 047. Los escépticos pueden consultar el número completo, con sus más de seis milloncitos de cifras.

Este método lo copié de un mensaje de John Abreu en la lista Snark.

Tres números

Llamemos a, b y c a las tres cifras. Representemos la suma pedida mediante

x3 x2 x1 + y3 y2 y1            z3 z2 z1

donde

{x1, x2, x3} = {y1, y2, y3} = {z1, z2, z3} = {a, b, c}(1)

Designemos δ1, δ2 y δ3 «lo que nos llevamos» en cada columna al sumar (δ1, δ2 y δ3 pueden ser 0 o 1).

δ3 δ2 δ1 x3 x2 x1 + y3 y2 y1             (2) z3 z2 z1

Claramente δ3 = 0 (los tres números son de tres cifras) y δ1 y δ2 pueden valer 0 o 1. De la suma obtenemos las ecuaciones

x1 + y1 = 10δ1 + z1
x2 + y2 + δ1 = 10δ2 + z2
x3 + y3 + δ2 = z3(3)

Sumando las ecuaciones y teniendo en cuenta (1) obtenemos

2(a + b + c) + (δ1 + δ2) = (a + b + c) + 10(δ1 + δ2)

de donde

a + b + c = 9(δ1 + δ2)

Como a + b + c no puede ser cero y δ1 y δ2 sólo pueden valer 0 o 1, hay dos posibles valores para δ1 + δ2: 1 y 2. Si δ1 + δ2 fuese 1 tendríamos a + b + c = 9. Evidentemente, los números x3x2x1 y y3y2y1 no pueden ser iguales y como las cifras de cada uno son distintas, a lo sumo se puede cumplir una de las igualdades

x1 = y1; x2 = y2; x3 = y3

De a + b + c = 9 se deduce que la suma de dos cifras distintas es menor o igual que 9, así que sólo se puede producir acarreo si x1 = y1 o x2 = y2 (en la tercera columna no puede haber acarreo). x1 = y1 = 5 implica que {a, b, c} = {5, 4, 0}, lo que produce la «solución» 405 + 045 = 450, pero 045 no podemos considerarlo un número de tres cifras. Análogamente, x2 = y2 = 5 nos lleva a 450 + 054 = 504. Se comprueba rápidamente que las otras posibilidades, x1 = y1 = 6 o x2 = y2 = 6, no producen solución ninguna. Así que podemos descartar el caso δ1 + δ2 = 1 y considerar como cierta la igualdad

a + b + c = 18(4)

La tercera ecuación de (3) queda entonces

x3 + y3 = z3 − 1(5)

Como z3 ≤ 9, de (5) tenemos que x3 + y3 ≤ 8. Esto implica que x3 = y3, ya que en otro caso, según (1), habría dos sumandos en (4) cuya suma valdría menos que 9 y esto obligaría a que el otro fuera estrictamente mayor que 9. Llamemos a = x3 = y3. De (5) se tiene z3 = 2a + 1 ≠ a. Llamemos c a z3 y b es entonces el tercer dígito. Como suman 18 se tiene que b = 17 − 3a. Con esto tenemos que los tres dígitos son:

a, b = 17 − 3a, c = 2a + 1

Como b ≤ 9, ha de ser a ≥ 3. Como también c ≤ 9 y c = 2a + 1, se tiene que a ≤ 4, lo que nos deja dos valores posibles para a: 3 y 4. El valor 3 no es válido, pues entonces b = 8 y c = 7 y la suma no cumple las condiciones del problema. La otra solución, a = 4 es la única correcta y con ella obtenemos b = 5 y c = 9, que nos proporciona la suma: 459 + 495 = 954.

Esta solución es original de Gerardo Valeiras.

Matrícula al revés

Los únicos dígitos que «boca abajo» siguen teniendo sentido son 0, 1 (escrito como un palito vertical), 6, 8 y 9. Todos se transforman en sí mismos, excepto 6 y 9, que se transforman el uno en el otro. Así que sabemos que la matrícula tiene justamente estas cinco cifras. Se trata, pues, de completar la resta

d4' d3' d2' d1' d0'
d0 d1 d2 d3 d4
                                       
7 8 6 3 3

donde {d0, d1, d2, d3, d4} = {d0', d1', d2', d3', d4'} = {0, 1, 6, 8, 9}. d0d1d2d3d4 es el número de la matrícula y d4'd3'd2'd1'd0' el que se ve al revés. di' = di si di ∈ {0, 1, 8}, di' = 9 si di = 6 y di' = 6 si di = 9.

Para el par (d0', d4) hay dos valores posibles: (9, 6) y (1, 8). Pero si d0' = 9, d0 = 6, y esto no puede ser (es demasiado grande). Así que es seguro que (d0', d4) = (1, 8) y ya tenemos la resta así:

8 d3' d2' d1' 1
1 d1 d2 d3 8
                                       
7 8 6 3 3

Vemos que al restar nos llevamos uno a la segunda columna. Hay que encontrar un valor para d3 al que sumándole 4 resulte otro valor permitido y el único posible es 6 (d3 = 6, d1' = 0).

8 9 d2' 0 1
1 0 d2 6 8
                                       
7 8 6 3 3

Sólo queda poner los números que faltan y comprobar que la resta está bien.

8 9 6 0 1
1 0 9 6 8
                                       
7 8 6 3 3

El número de la matrícula era 10.968.


Rodolfo Valeiras
Última modificación: 3 de abril de 2004

Código XHTML 1.0
validado