Su tarea es tomar dos expresiones polinómicas enteras de una sola variable y multiplicarlas en su expansión de izquierda a derecha principal no simplificada de primer término (AKA FOIL en el caso de binomios). No combine términos similares ni reordene el resultado. Para ser más explícito sobre la expansión, multiplique el primer término en la primera expresión por cada término en el segundo, en orden, y continúe en la primera expresión hasta que todos los términos se hayan multiplicado por todos los demás términos. Las expresiones se darán en una variante simplificada de LaTeX.
Cada expresión será una secuencia de términos separados por +
(con exactamente un espacio en cada lado) Cada término se ajustará a la siguiente expresión regular: (notación PCRE)
-?\d+x\^\d+
En inglés simple, el término es un encabezado opcional -
seguido de uno o más dígitos seguidos de x
una potencia entera no negativa (con^
)
Un ejemplo de una expresión completa:
6x^3 + 1337x^2 + -4x^1 + 2x^0
Cuando se conecta a LaTeX, obtiene
La salida también debe cumplir con este formato.
Dado que los corchetes no rodean exponentes en este formato, LaTeX realmente representará exponentes de varios dígitos de manera incorrecta. (p. ej., se 4x^3 + -2x^14 + 54x^28 + -4x^5
representa como ) No es necesario que tenga en cuenta esto y no debe incluir los corchetes en su salida.
Ejemplos de casos de prueba
5x^4
3x^23
15x^27
6x^2 + 7x^1 + -2x^0
1x^2 + -2x^3
6x^4 + -12x^5 + 7x^3 + -14x^4 + -2x^2 + 4x^3
3x^1 + 5x^2 + 2x^4 + 3x^0
3x^0
9x^1 + 15x^2 + 6x^4 + 9x^0
4x^3 + -2x^14 + 54x^28 + -4x^5
-0x^7
0x^10 + 0x^21 + 0x^35 + 0x^12
4x^3 + -2x^4 + 0x^255 + -4x^5
-3x^4 + 2x^2
-12x^7 + 8x^5 + 6x^8 + -4x^6 + 0x^259 + 0x^257 + 12x^9 + -8x^7
Reglas y Suposiciones
- Puede suponer que todas las entradas se ajustan a este formato exacto. El comportamiento para cualquier otro formato no está definido para los propósitos de este desafío.
- Cabe señalar que cualquier método para tomar los dos polinomios es válido, siempre que ambos se lean como cadenas que se ajusten al formato anterior.
- El orden de los polinomios es importante debido al orden esperado de expansión del producto.
- Debe admitir coeficientes de entrada entre y y exponentes de entrada de hasta .
- Por lo tanto, deben admitirse coeficientes de salida entre y y exponentes de hasta .
- Puede suponer que cada polinomio de entrada contiene no más de 16 términos
- Por lo tanto, debe (como mínimo) admitir hasta 256 términos en la salida
- Los términos con coeficientes cero deben dejarse como están, con los exponentes combinados adecuadamente
- Se permite el cero negativo en la entrada, pero no se puede distinguir semánticamente del cero positivo. Siempre da salida a cero positivo. No omita los términos cero.
¡Feliz golf! ¡Buena suerte!