Programozó versenyek

Magas szintű programozási nyelvek 1, gyakorló feladatsor, 2015. április 24.

2015. április 24. 10:00 – 2015. április 24. 10:00

Mindent vagy semmit! celebeknek

Nehéz olyan feladatot kitalálni, ami olyan könnyű, hogy mindenki meg tudja oldani, mégis elég nehéz ahhoz, hogy életszerű legyen. Rendszerint vagy az egyszerűség, vagy az életszerűség hiányzik. Mégis mennyire lehet egyszerű egy feladat?

Most, ahogy a Mindent vagy semmit! celebeknek szóló változatában, a kérdések és válaszok össze vannak keverve, és mivel a szereplők celebek, fontos, hogy a feladatok egyszerűek legyenek. A programodnak egy kérdést (egy megoldandó egyenletet) kell előállítania a válasz ismeretében. Pontosabban: olyan programot kell írnod, amely adott válaszhoz megkeresi a szokásos módon értelmezett matematikai szimbólumokat tartalmazó egyenletek közül a lehető legegyszerűbbet. Ebben a feladatban a „legegyszerűbb” szót sokféleképpen lehetne egyértelműen definiálni, és mindegyik definíció ugyanazt a levezetést eredményezné. Legyen most a definíció a következő: azt az egyenletet kell megkeresni, amelyet a legkisebb erőfeszítéssel lehet átalakítani a megadott válaszra.

Ha például adott az X = 2 válasz, megalkothatnánk a 9 – X = 7 egyenletet vagy az X > 0; X2 = 4 egyenletrendszert. Persze ezek nem feltétlenül a legegyszerűbb egyenletek. Az ilyen bonyolult feladatokat egy celeb nehezen tudná megoldani.

A bemenet specifikációja

A bemenet minden sora egy megoldást tartalmaz <szimbólum> = <érték> formában.

A kimenet specifikációja

A bemenet minden sorára azt a legegyszerűbb egyenletrendszert kell a kimenetre írni, amely a megadott megoldáshoz vezet, pontosan ugyanúgy használva a szóközöket, ahogy a bemeneten.

Példa bemenet

  1. Y = 3
  2. X=9
letöltés szöveges állományként

A példa bemenethez tartozó kimenet

  1. Y = 3
  2. X=9
letöltés szöveges állományként
Debreceni Egyetem, Informatikai Kar, v. 2024.09.30.