Feladat: S.77 Korcsoport: - Nehézségi fok: -
Kitűző(k):  Gyebnár Gábor 
Füzet: 2013/január, 37 - 38. oldal  PDF  |  MathML 

A szöveg csak Firefox böngészőben jelenik meg helyesen. Használja a fenti PDF file-ra mutató link-et a letöltésre.

Egy robot útját kell megterveznünk egy akadálypályán úgy, hogy minél hamarabb érje el a célvonalat. A célvonal az x tengely, az akadályok pedig ezzel párhuzamos szakaszok, melyeken a robot nem képes áthaladni. (A szakaszokat ideálisnak tekintjük olyan értelemben, hogy az y tengely irányában 0 a kiterjedésük.) A robot csak a tengelyekkel párhuzamosan tud mozogni. Írjunk programot, amely az akadályok végpontjai és a robot kezdeti pozíciója alapján megadja, hogy milyen hosszú a legrövidebb út, amelyen a robot elérheti a célt.
Bemenet: A standard input első sorában az akadályok száma található (0N200000), a másodikban a robot kezdeti pozíciójának x és y koordinátája egy szóközzel elválasztva. A következő N sor leírja egy-egy akadály helyét három, szóközzel elválasztott számmal, melyek közül az első megadja az y koordinátáját, a következő kettő pedig a két végpontjának x koordinátáit. Mindegyik koordináta 1 000 000-nál kisebb pozitív egész szám. Az akadályok nem érintkeznek egymással, továbbá a hosszuk nem 0.
Kimenet: A standard output egyetlen sorába írjuk ki a legrövidebb út hosszát.
Példák:

 
BemenetKimenetBemenetKimenet  3181313    20 107 8  8 15 267 5 9  6 10 196 3 6  5 24 306 8 115 2 45 7 95 10 144 6 74 8 103 1 53 9 122 4 72 8 141 4 9
 

 

Értékelés: A programhoz mellékelt, a helyes megoldás elvét tömören, de érthetően leíró dokumentáció 2 pontot ér. A programra akkor kapható meg a maximális 8 pont, ha bármilyen, a feltételeknek megfelelő tesztesetet képes megoldani 3 mp futásidőkorláton belül. A megoldásra részpontszám kapható, ha a program csak kisebb tesztesetekre tud lefutni időben, pl. ha a program csak olyan bemeneteket tud megoldani, amelyeknél a koordináták 0 és 100 közötti számok.
Beküldendő egy tömörített s77.zip állományban a program forráskódja (s77.pas, s77.cpp, ...) az .exe és más, a fordító által generált állományok nélkül, a program rövid dokumentációja (s77.txt, s77.pdf, ...), amely tartalmazza a megoldás rövid leírását, és megadja, hogy a forrás mely fejlesztői környezetben fordítható.