Hace unos meses se estudió en este blog el tipo de
expresión N=a*b + b*c + c*a, a la que llamamos “productos cíclicos”. Puedes
leerla en
En esa entrada se estudió la unicidad de esta
representación para algunos números y aquellos otros que no la admiten para
ningún valor. Llegamos a algunas sucesiones finitas ya publicadas. En esta de
hoy nos limitaremos al uso de tres números primos distintos.
De entrada se puede razonar que todos los números que
consideraremos serán impares, ya que si en a*b + b*c + c*a, a, b y c son
primos, puede ocurrir que uno de ellos sea 2, con lo que se sumarán dos
productos pares y uno impar, y si ninguno es igual a 2, los tres sumandos serán
impares, y también la suma lo será.
En las búsquedas previas que hemos emprendido se ha visto
que existen muchos casos distintos en unicidad y número de soluciones. Por ello
diseñaremos una función similar a la usada en la entrada enlazada, Function prodciclo$(n), pero que solo
admita factores primos distintos y que devuelva los ciclos encontrados y el
número de ellos. De esta forma podremos establecer las búsquedas que deseemos.
La denominaremos prodcicloprim$. Su
esquema es parecido a la anterior, ya que recorremos todos los primos posibles,
y de cada par calculamos el tercero a partir de N. Si resulta ser entero, primo
y menor que los otros dos, ya hemos encontrado los tres primos buscados. En ese
caso se recoge el resultado y se van contando las soluciones, Su algoritmo en
VBasic de Excel puede ser:
Public Function prodcicloprim$(n)
Dim s$
Dim i, j, k, m
s$ = "": m = 0 ‘s$ recogerá resultados y m
los contará
For i = 2 To (n - 2) / 2 ‘Primer
primo
If esprimo(i) Then
j = 2
While j < i And j < n / i ‘Segundo
primo
If esprimo(j) Then
k = (n - i * j) / (i + j) ‘Tercer
posible primo
‘Si k cumple
los requisitos, lo incorporamos a la solución e incrementamos el contador m
If k = Int(k) And k < j And
esprimo(k) Then m = m + 1: s$ = s$ + " -- " + Str$(i) + Str$(j) +
Str$(k) + " "
End If
j = j + 1
Wend
End If
Next i
If s$ <> "" Then
prodcicloprim = Str$(m) + " " + s$ Else prodcicloprim =
"NO"
End Function
Con esta función podremos buscar los números que permiten
esta descomposición. Bastará que la misma no devuelva “NO”. También podremos
contar soluciones, ya que la respuesta comienza con ese número. Por ejemplo:
prodcicloprim(191)=
4 --
13 7 5 -- 13 11 2
-- 17 7 3 -- 37
3 2
Esta respuesta nos indica que existen 4 soluciones, que
son
191=13*7+7*5+5*13
191=13*11+11*2+2*13
191=17*7+7*3+3*17
191=37*3+3*2+2*37
Con un poco de experiencia en búsquedas se le
puede sacar mucho partido a esta respuesta. Según las necesidades, podemos
alterar el código para que solo nos devuelva el número de soluciones, o solo
estas. Ya dependerá de nuestros intereses. Por ejemplo, el día 10/01/20 publiqué
en Twitter que 311 es el primer número que admite ocho descomposiciones de este
tipo:
311
es el menor número que es igual a ocho expresiones de la forma pq+qr+rp, con p,
q y r primos distintos:
311=13×11+11×7+7×13
311=17×13+13×3+3×17
311=19×13+13×2+2×19
311=23×7+7×5+5×23
311=29×7+7×3+3×29
311=37×5+5×3+3×37
311=43×5+5×2+2×43
311=61×3+3×2+2×61
Con esta función emprenderemos las búsquedas
que deseemos:
Números
que admiten al menos una representación de este tipo
Exigimos que prodcicloprim sea distinta de “NO”:
Nos resulta una sucesión que ya está
publicada:
En la tabla figuran los primeros números que
admiten la expresión y junto a ellos el número de soluciones y los primos
correspondientes. Vemos números con una, dos o tres representaciones. En cuanto
se avanza algo más aparecen más casos múltiples, como el citado 311.
Puedes consultar http://oeis.org/A238397
Números
que no admiten esta descomposición
Si buscamos los números en los que el
resultado es “NO” obtendremos la lista de los que no se pueden descomponer de
esta forma. Sería la complementaria de la anterior. Podríamos rotular estos
números como de categoría 0, ya que no admiten ninguna representación cíclica
de tres primos, y a los demás les podemos asignar la categoría según el número
de representaciones. Así tendríamos estas categorías:
Categoría 0: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
(faltaría el 31) 32, 33,…
Categoría 1: 31, 41, 59, 61, 87, 91, 103,
113, 119, 121, 129, 143, 161, 171, …
Categoría 2: 71, 101, 131, 211, 221, 269,
271, 343, 359, 391, 401, 423, 437, 439, 451, 471,…
Los primeros números del resto de categorías
son:
3 151
4 191
5 491
6 671
7 887
8 311
9 1151
Para la categoría 10 no existe ningún caso
inferior a 25000.
No hay comentarios:
Publicar un comentario