Diferente pentru problema/obstacole intre reviziile #1 si #5

Nu exista diferente intre titluri.

Diferente intre continut:

== include(page="template/taskheader" task_id="obstacole") ==
Se dau $N$ segmente in plan, neorizontale si neverticale care nu se intersecteaza in niciun puct. Aceste segmente se comporta ca niste obstacole.
Se dau $N$ segmente în plan, neorizontale şi neverticale care nu se intersectează în niciun punct. Aceste segmente se comportă ca nişte obstacole.
Fie $M$ baloane cu aer cald care merg in sus ( $x$-ul ramane la fel, $y$ creste). Daca un balon ajunge la un obstacol, balonul va merge de-a lungul obstacolului, in directia in care $y$ creste. Cand balonul a ajuns la capatul obstacolului, el va continua ca inainte sa mearga in sus ( $x$-ul va ramane neschimbat pana la urmatorul obstacol pe care il intalneste).
Fie $M$ baloane cu aer cald care merg în sus ( $x$-ul rămâne la fel, $y$ creşte). Dacă un balon ajunge la un obstacol, balonul va merge de-a lungul obstacolului, în direcţia în care $y$ creşte. Când balonul a ajuns la capătul obstacolului, el va continua ca înainte să meargă în sus ( $x$-ul va rămâne neschimbat până la următorul obstacol pe care îl întălneşte).
Pentru fiecare dintre cele $M$ baloane se cere sa se afiseze $x$-ul pe care o sa il aiba dupa trece de toate obstacolele pe care le va intalni.
Pentru fiecare dintre cele $M$ baloane se cere să se afişeze $x$-ul pe care o să îl aibă după trece de toate obstacolele pe care le va întâlni.
Atentie! Daca un balon, mergand in sus, ajunge la capatul unui obstacol, atunci balonul va urma obstacolul. (vezi balonul $1 0$ din exemplu)
Atentie! Baloanele pot incepe si de pe obstacole. In acest caz, ele vor merge pe obstacol. (vezi balonul $13 7$ din exemplu)
Atenţie! Dacă un balon, mergând în sus, ajunge la capătul unui obstacol, atunci balonul va urma obstacolul. (vezi balonul $1 0$ din exemplu)
Atenţie! Baloanele pot începe şi de pe obstacole. În acest caz, ele vor merge pe obstacol. (vezi balonul $13 7$ din exemplu)
h2. Date de intrare
Fişierul de intrare $obstacole.in$ se v-a gasi pe prima linie $N$ si $M$. Pe urmatoarele $N$ linii se vor gasi cate 4 numere $x1, y1, x2, y2$ reprezentand coordonatele punctelor unui segment. Pe urmatoarele $M$ linii se vor gasi cate 2 numere $x, y$ reprezentand coordonatele de plecare a balonului.
Fişierul de intrare $obstacole.in$ se va găsi pe prima linie $N$ şi $M$. Pe următoarele $N$ linii se vor găsi câte 4 numere $x1, y1, x2, y2$ reprezentând coordonatele punctelor unui segment. Pe următoarele $M$ linii se vor găsi cate 2 numere $x, y$ reprezentând coordonatele de plecare ale balonului.
h2. Date de ieşire
În fişierul de ieşire $obstacole.out$ se vor gasi $M$ numere, cate unul pe linie, fiecare semnificand $x$-ul la care o sa ajunga balonul corespondent.
În fişierul de ieşire $obstacole.out$ se vor găsi $M$ numere, câte unul pe linie, fiecare semnificând $x$-ul la care o să ajungă balonul corespondent.
h2. Restricţii
* $1 ≤ N, M ≤ 10^5^$
* $0 ≤ x, y, x1, y1, x2, y2 ≤ 10^9^ + 10^4^$
* Pentru $20%$ din punctaj, $N ≤ 100$ si $M ≤ 100$.
* Pentru $50%$ din punctaj, $N ≤ 1000$ si $M ≤ 1000$.
* Pentru $20%$ din punctaj, $N ≤ 100$ şi $M ≤ 100$.
* Pentru $50%$ din punctaj, $N ≤ 1000$ şi $M ≤ 1000$.
h2. Exemplu

Nu exista diferente intre securitate.

Topicul de forum nu a fost schimbat.