|
|||
Menetelő hangyákHangyák! Hát nem elbűvölőek? E kis rovarok ezrei masíroznak fel és alá. Jól szervezett hangyavárakat tudnak építeni. Néha azonban egy kicsit bután cselekszenek. Képzeljük el, hogy van egy hosszú fadarab, aminek a tetején hangyák sétálgatnak! A viselkedési mintájuk nagyon egyszerű: Mindegyikük lassan araszol előre, másodpercenként 1 cm-es állandó sebességgel. Ha egy hangya találkozik egy másikkal, összeérintik az „antennáikat”, majd mindketten azonnal megfordulnak, és elindulnak az ellenkező irányba. Ha egy hangya eléri a fadarab végét, akkor leesik, és többé nincs hatással a többi hangyára.
Az ábrán mozgásban lévő hangyákra láthatunk példát a 0. másodpercben. Az 1. másodpercben az E és az A jelű hangyák találkoznak a 2-es pozícióban, és megfordulnak. Az A jelű hangya 1,5 másodperccel később találkozik a B jelűvel. Ugyanebben a pillanatban (2,5 másodperccel az indulás után) a C és D jelű hangyák is találkoznak. Mind a négyen megfordulnak. 0,5 másodperccel később (a 3. másodpercben) az E jelű hangya leesik a bal oldalon. És így tovább… A feladatod, hogy szimuláld a hangyák mozgását. Az egyszerűség kedvéért tegyük fel, hogy a hangyák mérete 0 (még ha az ábra alapján ez nem is így tűnik). A bemenet specifikációjaA bemenet számos tesztesetet tartalmaz. Minden teszteset egy olyan sorral kezdődik, amelyben két egész szám (L és A) szerepel egy szóközzel elválasztva. L a fadarab hossza cm-ben (1 ≤ L ≤ 999 999), A pedig a szimuláció kezdetén a fadarabon lévő hangyák száma (1 ≤ A ≤ L+1).
Ezután A sor következik, amelyek mindegyike egy pozitív egész számból
(Xi), egy szóközből és egy angol nagybetűből áll. A szám (0 ≤
Xi ≤ L) az i-edik hangya pozícióját adja meg, a betű pedig
a kezdeti irányát: „ A bemenetet egy olyan sor zárja, amelyben két nulla szerepel L és A helyén. A kimenet specifikációja
Minden tesztesetre egyetlen sort kell a kimenetre írni, amely a „ Példa bemenet
A példa bemenethez tartozó kimenet
(Az utolsó példa teszteset megfelel az ábrának.) |
|||
Debreceni Egyetem, Informatikai Kar, v. 2019.03.01. |