Nuestros mejores programadores agotaron sus provisiones de café, investigando todo el tiempo por la resolución, hasta que Miriam encontró el hallazgo en Gogs así que ahora la compartimos aquí.
Solución:
Gelatina, $frac 30 7 = 4,29$
÷J$ŻUḅI
¡Pruébelo en línea!
Toma el polinomio como una lista de coeficientes en formato little-endian (es decir, el ejemplo es 7,2,5,4
). Esto puede manejar cualquier grado (positivo) que desee, pero lo he limitado a 30 como dice la pregunta $0 < N < 30$
+2 bytes y una puntuación de $3.33$ si el polinomio debe tomarse en formato big-endian
Cómo funciona
÷J$ŻUḅI - Main link. Takes coeffs on the left and [a, b] on the right
$ - To the coeffs:
J - Yield [1, 2, 3, ..., N]
÷ - Divide each coeff by the orders
Ż - Prepend 0
U - Reverse
ḅ - Calculate as polynomials, with x = a and x = b
I - Reduce by subtraction
j, $frac3012aproximadamente 2,5$
[:-/[-p..p.[
Try it online!
-1 thanks to Bubbler
p..
Integral of a polynomial. Returns a list representing the solution polynomial.p.
Evaluate polynomial at given bounds.[-
Subtract from constant terms (makes both values negative).-/
And subtract negative ending bound answer from negative starting bound answer.
Factor, $frac3056approx0.5357$
[ [ 1 + 3dup nip v^n first2 - swap / * ] suma de índice de mapa]
¡Pruébelo en línea!
Toma los límites y los coeficientes a la inversa, por ejemplo 3 2 7 2 5 4
y devuelve un número racional, por ejemplo 108+2/3
.
Para tomar las entradas como dadas y devolver un flotante, agregue un reverse
a neg
y un >float
para obtener 75 bytes:
Factor, $frac3075=0,4$
[ reverse [ 1 + 3dup nip v^n first2 - swap / * ] map-index sum neg >float ]
¡Pruébelo en línea!
Recuerda que puedes difundir este ensayo si te valió la pena.