Gracias a @ComradeSparklePony por el título.
Este desafío debería ser muy simple. Te dan tres listas.
El primero es una lista de nombres, en caso de título.
El segundo es una lista de adjetivos, en minúsculas.
El tercero es una lista de sustantivos, en minúsculas.
Seleccione al azar un nombre, adjetivo opcional, nombre y salida <Name>'s <adjective> <noun>
. Sin embargo, cada palabra debe comenzar con la misma letra. Puede suponer que todas las palabras comienzan con una letra. También puede suponer (pero tenga en cuenta en su respuesta si lo hace):
- que todas las palabras están compuestas únicamente por caracteres alfabéticos
- que hay al menos un sustantivo para cada nombre
- que hay al menos un nombre para cada sustantivo
Sin embargo, no puede suponer que existe un adjetivo para un par particular de nombre y nombre, ya que el adjetivo es opcional, por lo que la salida seguirá siendo válida.
No tiene que seleccionar la letra compartida de manera uniforme, aunque todas las letras disponibles deben tener una probabilidad distinta de cero. Sin embargo, debe asegurarse de que todas las salidas para una letra dada tengan la misma probabilidad de ocurrir dentro de los límites del generador de números aleatorios de su idioma. En el caso del adjetivo, esto es equivalente a tener una entrada adicional que significa "sin adjetivo para esta letra" que tiene la misma posibilidad que todos los otros adjetivos para esa letra.
Ejemplo de listas de entrada:
Joan Neil Nicola Oswald Sherman Stephanie
new novel old original second silent
jeep noun novel output second sheep snake
Ejemplo de salidas para estas entradas (cada línea es un ejemplo separado):
Stephanie's second second
Sherman's silent snake
Oswald's original output
Nicola's novel novel
Neil's noun
Joan's jeep
Tenga en cuenta que no hay espacio adicional entre las palabras en los últimos dos ejemplos.
Este es el código de golf , por lo que gana el código más corto que no rompa ninguna laguna estándar
En el improbable caso de que ayude, puede ingresar todo en mayúsculas, pero aún necesita emitir en mayúsculas y minúsculas.
j
adjetivo, ¿la probabilidad sería 4 en 9? Podría valer la pena colocar probabilidades contra los resultados, o enumerar todos los resultados, ya que entiendo que no solo "todos los resultados para una letra dada ..." sino también todos los resultados distintos deberían tener la misma probabilidad (dados valores distintos dentro de cada lista).