AKA: Generar Clickbait a partir de una matriz.
Dada una variedad de enteros, genere algunos clickbait dignos de dolor basados en su disposición y longitud:
- Si tiene 20 elementos o menos, puede hacer una Lista de X principales. Parámetros: longitud de la matriz.
- Los números primos son famosos, por lo que cada vez que dos de ellos estén uno al lado del otro, pasarán como chismes. Parámetros: los dos primos adyacentes en el orden en que aparecen en la matriz.
- Si algún número aparece dos veces o más en la matriz, entonces es impactante e increíble y todos deben escucharlo. Si aparecen varios números dos veces, haga una noticia para cada uno. Imprima esto solo una vez por número único. Parámetros: aparición del número medido por la apariencia total.
- Si ve más de 3 elementos en orden
ordenadomonotónicamente creciente , seguido de una disminución repentina, entonces diga cómo están ordenados y bromee sobre lo que sucede a continuación. Solo haz esto una vez por escalera. Parámetros: longitud de la recta.
Estos son los clickbaits respectivos que debe usar:
The Top {{N}} Array Elements
{{N1}} And {{N2}} Were Spotted Together, You Won't Believe What They Did
These {{N}} Elements Will Blow Your Mind
{{N}} Elements Sort Themselves, Find Out What Comes Next
Recuerde, usted representa a una compañía de medios barata, por lo que deberá ordeñar esto e imprimir todos los títulos posibles. Si hay 2 títulos idénticos, imprímalos ambos.
Por ejemplo, si te dan esta matriz ...
1,2,3,4,2,1,1,5,6
Debe generar todos estos, en orden arbitrario:
The Top 9 Array Elements
2 And 3 Were Spotted Together, You Won't Believe What They Did
These 2 Elements Will Blow Your Mind
These 3 Elements Will Blow Your Mind
4 Elements Sort Themselves, Find Out What Comes Next
Tenga en cuenta la falta de este título:
3 Elements Sort Themselves, Find Out What Comes Next
Como código de golf, gana la respuesta más corta en bytes.
Respuestas:
Jalea , 142 bytes
Un enlace monádico que acepta una lista de enteros y devuelve una lista de listas de clickbaits (cada una de las cuales es una lista de caracteres y enteros). Para un programa completo que imprime clickbaits separados por avance de línea, simplemente agregue
ẎY
al final.Pruébalo en línea! (El pie de página hace una lista única de clickbaits y luego los separa con nuevas líneas.)
... o vea el ejemplo dado en la pregunta.
¿Cómo?
Los 99 bytes más a la derecha de este enlace forman un nilad (una función con cero argumentos, es decir, una constante):
Etiquetemos estas partes de texto como
X
, ahora el Enlace es:fuente
“...“...“...“...»
parte del código, con saltos de línea en lugar de los números, como esteJava 10,
467457456453 bytesAsume que la matriz de entrada contendrá valores
0 < N < 1000
([1,999]
).Pruébalo en línea.
fuente
JavaScript (Node.js) , 397 bytes
Pruébalo en línea!
fuente
'!'
con' Elements '
(o similar)?The Top * Array Elements
[5,10,5,10]
salirThese 2 Elements Will Blow Your Mind
dos veces? Creo que la parte del desafío " Solo imprima esto una vez por número único " significa los números5
y10
no el númeroN=2
. Pero quizás le pida a OP que verifique. Si el segundo, su implementación es correcta y las otras tres respuestas son incorrectas. Si el primero solo su implementación es incorrecta.JavaScript (Node.js) ,
351350349347 bytesPruébalo en línea!
fuente