Die Kindergartengruppe lernt gerade etwas über das Anbauen von Pflanzen. Die Lehrkraft fand es eine gute Idee, der Klasse Samen zu geben, damit sie sie in die Erde pflanzen und großziehen können. Zu diesem Zweck haben die Kinder kleine Becher auf die Fensterbänke gestellt und in jeden Becher eine Pflanzensorte gepflanzt. Aus vier verfügbaren Samensorten durften die Kinder ihre Favoriten auswählen: grass, clover, radishes und violets.
Deine Aufgabe ist es, anhand eines Diagramms zu bestimmen, für welche Pflanzen jedes Kind in der Kindergartenklasse verantwortlich ist.
In der Klasse sind 12 Kinder:
Es werden vier verschiedene Samensorten gepflanzt:
| Pflanze | Kodierung im Diagramm |
|---|---|
| Grass | G |
| Clover | C |
| Radish | R |
| Violet | V |
Jedes Kind bekommt vier Becher, zwei pro Reihe:
[window][window][window]
........................ # each dot represents a cup
........................
Ihre Lehrkraft teilt die Becher den Kindern alphabetisch nach ihren Namen zu. Das heißt: Alice kommt zuerst und Larry zuletzt.
Hier ist ein Beispieldiagramm, das Alices Pflanzen zeigt:
[window][window][window]
VR......................
RG......................
In der ersten Reihe, am nächsten zu den Fenstern, hat sie violet und radish. In der zweiten Reihe hat sie radish und grass.
Deinem Programm werden die Pflanzen von links nach rechts übergeben, beginnend mit der Reihe, die am nächsten zu den Fenstern liegt. Daraus soll es bestimmen können, welche Pflanzen zu welchem Kind gehören.
Wenn ihm zum Beispiel gesagt wird, dass der Garten so aussieht:
[window][window][window]
VRCGVVRVCGGCCGVRGCVCGCGV
VRCCCGCRRGVCGCRVVCVGCGCV
Fragt man dann nach Alices Pflanzen, sollte es Folgendes zurückgeben:
Fragt man dagegen nach Bobs Pflanzen, ergibt sich:
Gib die Pflanzen der Schülerin oder des Schülers als String aus und verwende dabei ein Komma und ein Leerzeichen als Trennzeichen.
Der Puffer für den Diagramm-String belegt die Bytes 1024-2047 des linearen Speichers. Der Puffer für den String der Schülerin oder des Schülers belegt die Bytes 2048-3071 des linearen Speichers.
Die Eingabe-Strings dürfen bei Bedarf an Ort und Stelle verändert werden.
Melde dich bei Exercism an, um WebAssembly mit 87 Übungen und echtem menschlichen Mentoring zu lernen und zu meistern, alles kostenlos.