C'è un villaggio di Sioux. Ha un totem:
__
___| |___
\/ \ / \/
/\ ``| |`` /\
/^^\ | | /^^\
/ /\ \ | | / /\ \
''''''''''''''''''''''''''''
Il totem consente ai Sioux di padroneggiare il tempo per aiutare nelle loro diverse attività. Aiuta gli abitanti del villaggio a decorare correttamente il totem per invocare il tempo adeguato. Il totem ha diverse parti:
__
___|AA|___
\/ \BBBBBBBB/ \/
/\ ``|CC|`` /\
/^^\ |DD| /^^\
/ /\ \ 13 |EE| 42 / /\ \
''''''''''''''''''''''''''''
Aè per sole()o nuvolewwBè per pioggia""""""""o neve::::::::Cè per il temporalezzDè per il vento~~Eè per la nebbia==
Ma non è tutto. Il totem ha bisogno di ballerini meteorologici. Più elementi vengono invocati, maggiore è il numero di ballerini richiesti. Se viene richiamato un elemento, è necessario un ballerino. Due elementi, due ballerini. Oltre quattro elementi, ci saranno sempre al massimo quattro ballerini. Se non viene richiamato alcun elemento, non sono necessari ballerini. Il totem deve riposare.
I ballerini del tempo devono apparire nell'ordine 1234. Ad esempio, se ci sono due ballerini, gli slot 1e 2devono essere occupati. Inoltre, ogni ballerino esegue una figura diversa:
1èT2èY3èK4èX
Ora, gli abitanti del villaggio esprimeranno i loro desideri meteorologici. Pronunciano una frase contenente gli elementi meteorologici che vorrebbero avere. Installa il totem e i ballerini per soddisfare i loro desideri.
Sfida
Scrivi un programma che accetta una stringa come input, abbina gli elementi nella frase ( sole , pioggia , ...) e produce l'intero villaggio con il totem correttamente impostato e i suoi ballerini. Il tuo programma non deve verificare la correttezza della stringa di input (ad es. Non conterrà sole e nuvole ). Deve corrispondere alle parole (in senso letterale):
- La stringa di input
X says: "I like the wind, it blows the worries away"corrisponde a wind , poiché la virgola non fa parte della parola - La stringa di input
Y says: "I hope the weather won't get too windy"non corrisponde a wind , perché windy e wind sono due parole diverse
Le parole da abbinare sono garantite nella parte citata della stringa di input (la prima parte che designa chi sta parlando non conterrà mai una parola che potrebbe essere abbinata).
Esempi
The squaw says: "I want sun and wind for drying the clothes"
__
___|()|___
\/ \ / \/
/\ ``| |`` /\
/^^\ |~~| /^^\
/ /\ \ T | | Y / /\ \
''''''''''''''''''''''''''''
The warrior thinks: "A good thunderstorm will afraid the invaders. Or a snow storm. Or an impenetrable fog. Or an oppressive sun."
__
___|()|___
\/ \::::::::/ \/
/\ ``|zz|`` /\
/^^\ | | /^^\
/ /\ \ TK |==| XY / /\ \
''''''''''''''''''''''''''''
The papoose shouts: "I WANNA GO OUTSIDE PLAY UNDER THE SUN!"
__
___|()|___
\/ \ / \/
/\ ``| |`` /\
/^^\ | | /^^\
/ /\ \ T | | / /\ \
''''''''''''''''''''''''''''
The wise grandma whispers: "The totem is an illusion"
__
___| |___
\/ \ / \/
/\ ``| |`` /\
/^^\ | | /^^\
/ /\ \ | | / /\ \
''''''''''''''''''''''''''''
The shaman confides: "I perform my magic hidden in the fog, under the rain or at least under heavy clouds"
__
___|ww|___
\/ \""""""""/ \/
/\ ``| |`` /\
/^^\ | | /^^\
/ /\ \ TK |==| Y / /\ \
''''''''''''''''''''''''''''
The village chief claims: "The meat of bison is better preserved in the snow, or dried under a burning sun. My Pa' used to say that heavy wind and a thunderstorm could help too, but I have no clue how. And despite everyone contradicting me, I am persuaded a good fog will do as well"
__
___|()|___
\/ \::::::::/ \/
/\ ``|zz|`` /\
/^^\ |~~| /^^\
/ /\ \ TK |==| XY / /\ \
''''''''''''''''''''''''''''
Questo è code-golf quindi vince la risposta più breve in byte. Le spiegazioni sono incoraggiate.
The papoose shouts: "I WANNA GO OUTSIDE PLAY UNDER THE SUN!". Anche questa sfida è stata molto meno dolorosa e molto più divertente di quanto pensassi sarebbe stata così grazie per la sfida: P :)
suneclouds, o entrambirainesnow?