Az I/S. 8. feladat (2016. április) |
I/S. 8. Egy hangya a következő utasítások alapján közlekedik: F (előrelép egyet), L (balra fordul 90 fokot), R (jobbra fordul 90 fokot). A hangyának összesen \(\displaystyle N\) (\(\displaystyle 1\le N\le 100\,000\)) utasítást adunk. A hangya a \(\displaystyle (0;0)\) pontról indul, és azon tűnődik, hogy hányféle végpozícióba juthat el, ha az \(\displaystyle N\) közül pontosan egy utasítást másként csinál. Például L helyett F-et.
A program olvassa be a standard input első sorából az utasításokat tartalmazó szöveget, és írja a standard output első és egyetlen sorába a lehetséges végpozíciók számát.
|
Magyarázat: A két utasítás egyikének megváltoztatásával az FL, FR, RF, LF utasításpárok jöhetnek létre, melyekkel a hangya a \(\displaystyle (0;1)\), \(\displaystyle (0;1)\), \(\displaystyle (1;0)\), és \(\displaystyle (-1;0)\) végpozíciókba kerülhet.
Pontozás és korlátok: A programhoz mellékelt, a helyes megoldás elvét tömören, de érthetően leíró dokumentáció 1 pontot ér. A programra akkor kapható meg a további 9 pont, ha bármilyen hibátlan bemenetet képes megoldani az 1 mp futásidőkorláton belül.
Beküldendő egy tömörített is8.zip állományban a program, valamint a program rövid dokumentációja, amely a fentieken túl megadja, hogy a forrás mely fejlesztői környezetben fordítható.
(10 pont)
A beküldési határidő 2016. május 10-én LEJÁRT.
Statisztika:
12 dolgozat érkezett. 10 pontot kapott: Gáspár Attila, Gergely Patrik, Janzer Orsolya Lili, Kis Lázár Bence, Kiss Gergely, Nagy Ábel, Nagy Nándor, Németh 123 Balázs, Noszály Áron, Olexó Gergely, Szakály Marcell. 7 pontot kapott: 1 versenyző.
A KöMaL 2016. áprilisi informatika feladatai