A derivada de uma função é uma pedra angular da matemática, engenharia, física, biologia, química e também um grande número de outras ciências. Hoje vamos calcular algo apenas tangencialmente relacionado: a derivada aritmética.
Definição
A derivada aritmética a(n)
ou n'
é definida aqui ( A003415 ) por um número de propriedades semelhantes à derivada de uma função.
a(0) = a(1) = 0
,a(p) = 1
, ondep
está qualquer prime, ea(mn) = m*a(n) + n*a(m)
.
A terceira regra é baseada na regra do produto para a diferenciação de funções: para funções f(x)
e g(x)
, (fg)' = f'g + fg'
. Então, com números (ab)' = a'b + ab'
.
Além disso, como a derivada aritmética pode ser estendida aos números negativos por meio dessa relação simples a(-n) = -a(n)
, a entrada pode ser negativa.
Regras
- Escreva um programa ou função que, dado qualquer número inteiro
n
, retorne a derivada aritmética den
. - As entradas serão , para evitar problemas com tamanhos e números inteiros muito grandes para levar em consideração uma quantidade de tempo razoável. Seu algoritmo ainda deve ser capaz de calcular teoricamente a derivada aritmética de números fora desse intervalo.
-230 < n < 230
- São permitidos embutidos para matemática simbólica, fatoração principal e diferenciação.
Exemplos
> 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 sempre, se o problema não estiver claro, entre em contato. Boa sorte e bom golfe!
prime
ema(prime)
? É apenas um número primo?