La derivada de una función es una piedra angular de las matemáticas, la ingeniería, la física, la biología, la química y también una gran cantidad de otras ciencias. Hoy vamos a calcular algo solo relacionado tangencialmente: la derivada aritmética.
Definición
La derivada aritmética a(n)
o n'
se define aquí ( A003415 ) por una serie de propiedades que son similares a la derivada de una función.
a(0) = a(1) = 0
,a(p) = 1
, dondep
es cualquier primo, ya(mn) = m*a(n) + n*a(m)
.
La tercera regla se basa en la regla del producto para la diferenciación de funciones: las funciones f(x)
y g(x)
, (fg)' = f'g + fg'
. Así que con los números, (ab)' = a'b + ab'
.
También es de destacar que, dado que la derivada aritmética se puede extender a los números negativos a través de esta simple relación a(-n) = -a(n)
, la entrada puede ser negativa.
Reglas
- Escriba un programa o función que, dado cualquier número entero
n
, devuelva la derivada aritmética den
. - Las entradas serán , para evitar problemas con los tamaños enteros y los números demasiado grandes para tener en cuenta una cantidad de tiempo razonable. Su algoritmo aún debería ser capaz de calcular teóricamente la derivada aritmética de números fuera de este rango.
-230 < n < 230
- Se permiten incorporados para matemática simbólica, factorización prima y diferenciación.
Ejemplos
> a(1)
0
> a(7)
1
> a(14) # a(7)*2 + a(2)*7 = 1*2 + 1*7 = 9
9
> a(-5) # a(-5) = -a(5) = -1
-1
> a(8) # a(8) = a(2**3) = 3*2**2 = 12
12
> a(225) # a(225) = a(9)*25 + a(25)*9 = 6*25 + 10*9 = 150 + 90 = 240
240
> a(299792458) # a(299792458) = a(2)*149896229 + a(7)*42827494 + a(73)*4106746 + a(293339)*1022 = 1*149896229 + 1*42827494 + 1*4106746 + 1*1022 = 149896229 + 42827494 + 4106746 + 1022 = 196831491
196831491
Como siempre, si el problema no está claro, hágamelo saber. ¡Buena suerte y buen golf!
prime
ena(prime)
? ¿Es solo un número primo?