Questa sfida è ispirata a una serie di libri per bambini di Fiona Watt e Rachel Wells, che mi sono divertito di recente con mia figlia.
In ogni libro un topo (illustrato, ma non parte del testo) si lamenta che una successione di 5 cose dello stesso tipo non fanno al caso suo. Quindi esegue il backup dichiarando che alcuni componenti della cosa non hanno la proprietà che si aspetta.
Alla sesta volta, il mouse trova la sua cosa ed è contento perché ha la proprietà prevista.
Ecco il testo di un esempio tipico:
That's not my bunny, its tail is too fluffy.
That's not my bunny, its paws are too rough.
That's not my bunny, its tail is too woolly.
That's not my bunny, its eyes are too shiny.
That's not my bunny, its nose is too wrinkled.
That's my bunny! Its ears are so soft.
Ora, la maggior parte dei programmatori si renderebbe conto che questo è un metodo molto algoritmico per produrre del testo. Poiché è un processo così chiaro, dovremmo essere in grado di riprodurlo scrivendo del codice.
Cominciamo con tre raccolte di parole:
things = ["dinosaur", "lamb", "princess", "reindeer", "train"]
parts = ["back", "bells", "body", "bows", "crown", "dress", "ears",
"engine", "fan", "flippers", "funnel", "hooves", "horns", "neck",
"nose", "roof", "sash", "side", "spines", "spots", "tail", "teeth",
"tiara", "wheels", "windows"]
properties = ["bumpy", "fluffy", "furry", "fuzzy", "glittery", "glossy",
"hairy", "red", "rough", "rusty", "shiny", "silky", "slippery",
"soft", "sparkly", "squashy", "thick", "velvety", "woolly"]
- Innanzitutto, decidiamo quale tipo di cosa descriveremo.
- Quindi 5 volte, genereremo la riga "Questa non è la mia [cosa], la sua [parte] è troppo [proprietà].
- Infine, generiamo la riga "Questa è la mia [cosa]! La sua [parte] è così [proprietà]!
La sfida
- Genera il testo di una storia "Questa non è la mia ...".
- Non deve riprodurre in modo coerente lo stesso testo.
- È il golf del codice, quindi prova a farlo nel minor numero di byte.
- Usa qualsiasi lingua per favore.
- Lo spazio bianco non ha importanza, ma deve esserci un carattere di nuova riga tra le righe.
- Gli elenchi di parole sorgente non fanno parte della tua risposta (in TIO possono essere aggiunti all'intestazione).
- È possibile rinominare gli elenchi delle parole sorgente.
- L'output può essere emesso su un terminale o il testo generato in un oggetto.
- Si prega di includere un collegamento a un interprete online.
- Ignora i plurali, "le sue corna" va bene.
- Non ha senso. Se l'imbuto della tua principessa è troppo soffice, dillo e basta.
Uscita campione:
That's not my train, its engine is too rusty.
That's not my train, its hooves is too thick.
That's not my train, its sash is too fuzzy.
That's not my train, its tail is too velvety.
That's not my train, its horns is too glittery.
That's my train! Its hooves is so hairy.
Buon golf!