La secuencia de Lehmer-Comtet es una secuencia tal que a (n) es la n º derivada de f (x) = x x con respecto a x como evaluado en x = 1 .
Tarea
Tomar un número entero no negativo como entrada y salida de la n º término de la secuencia de Lehmer-Comtet.
Este es el código de golf, por lo que debe minimizar el tamaño del archivo de su código fuente.
Casos de prueba
Aquí están los primeros dos términos en orden (copiados del OEIS)
1, 1, 2, 3, 8, 10, 54, -42, 944, -5112, 47160, -419760, 4297512, -47607144, 575023344, -7500202920, 105180931200, -1578296510400, 25238664189504, -428528786243904, 7700297625889920, -146004847062359040, 2913398154375730560, -61031188196889482880
D[x^x,{x,#}]/.x->1&
19 bytes.-1
- la secuencia de OEIS comienza en n = 0.Octava con paquete simbólico,
3632 bytesEl código define una función anónima que genera una variable simbólica con el resultado.
Pruébalo en línea!
fuente
Haskell , 57 bytes
Pruébalo en línea!
Sin incorporaciones para diferenciar o álgebra. Salidas flotantes.
fuente
Python con SymPy ,
77755857 bytes1 byte guardado gracias a @notjagan
17 bytes guardados gracias a @AndersKaseorg
fuente
lambda n:diff('x**x','x',10).subs('x',1)
no requieresympy.abc
.n
?x**x
conx^x
.SageMath ,
3332 bytesPruébalo en SageMathCell
fuente
Python 3 , 150 bytes
Pruébalo en línea!
Complejidad de tiempo de ejecución exponencial. Utiliza la fórmula dada en la página OEIS.
fuente
n>=r>=0
Guarda un byte.0**n
despuéssum(...)
.n<1
lugar de0**n
Python3 + mpmath 52 bytes
-3 bytes, gracias @Zachary T
fuente
from mpmath import*
, y la segunda adiff(lambda x:x**x,1,n)
. (solo eliminando espacios innecesarios)Python 3 ,
288261 bytesDiferenciación sin diferenciación incorporada.
Pruébalo en línea!
Cómo funciona
Cada una de las primeras cinco líneas define funciones y sus derivados y sus resultados cuando se evalúan en
1
. Sus derivados también son funciones.p
es poder es decira*x^n
l
es logaritmo es decirln(x)
e
es exponencial es decirexp(x)
a
es la suma es decirf(x)+g(x)
m
es multiplicación es decirf(x)*g(x)
Uso: por ejemplo,
exp(ln(x)+3x^2)
se representaría comoe(l()+p(3,2))
. Dejarx=e(l()+p(3,2))
. Para encontrar su derivada, llamex(1)
. Para encontrar su resultado cuando se evalúa en1
, llame alx(0)
.Bonus: diferenciación simbólica
fuente
exec
compresión. Pruébalo en línea!Pari / GP , 34 bytes
Pruébalo en línea!
fuente