Pagini recente » Atasamentele paginii Subset2 | Atasamentele paginii NumberOfPaths | Monitorul de evaluare | Monitorul de evaluare | Diferente pentru problema/dsip intre reviziile 1 si 14
Diferente pentru
problema/dsip intre reviziile
#1 si
#14
Diferente intre titluri:
Diferente intre continut:
== include(page="template/taskheader" task_id="dsip") ==
Poveste şi cerinţă...
Karina are o foaie de matematica pe care este desenat un sistem de coordonate cartezian. Ea deseneaza $N$ puncte la coordonate intregi si $M$ drepte. Karina stie ca orice dreapta imparte planul in doua semiplane. Ea este curioasa cum impart dreptele punctele in doua parti. Astfel ea vrea sa stie cate puncte sunt de o parte a fiecarei drepte si cate puncte sunt de cealalta parte. Mai exact pentru fiecare dreapta defineste $N{~1~}$ si $N{~2~}$ numarul de puncte de o parte si respectiv de cealata parte a dreptei. Karina vrea sa afle min({$N{~1~}$}, {$N{~2~}$}) si max({$N{~1~}$}, {$N{~2~}$}). Daca un punct se afla exact pe dreapta nu se considera in nici o parte a dreptei (nu se ia in considerare).
h2. Date de intrare
Fişierul de intrare $dsip.in$ ...
Fişierul de intrare $dsip.in$ va contine pe prima linie numerele $N$ si $M$ reprezentand numarul de puncte din plan si respectiv numarul de drepte. Pe urmatoarele $N$ linii se vor afla cate $2$ numere intregi reprezentand coordonatele punctelor. Urmatoarele $M$ linii vor contine cate 4 numere intregi $x1$, $y1$, $x2$ si $y2$ reprezentand doua puncte prin care trece dreapta respectiva.
h2. Date de ieşire
În fişierul de ieşire $dsip.out$ ...
Fişierul de ieşire $dsip.out$ va contine $M$ linii fiecare continand doua numere min({$N{~1~}$}, {$N{~2~}$}) si max({$N{~1~}$}, {$N{~2~}$}) reprezentand raspunsul pentru fiecare dreapta in parte in ordinea in care acestea apar in fisierul de intrare.
h2. Restricţii
* $... ≤ ... ≤ ...$
* $1 ≤ N ≤ 2 000$
* $1 ≤ M ≤ 200 000$
* Oricare 3 puncte din cele $N$ sunt necoliniare.
* Toate coordonatele din fisierul de intrare vor fi cuprinse intre $0$ si $5 000$
* **Atentie**: se recomanda evitarea folosirii tipurilor de date reale.
h2. Exemplu
table(example). |_. dsip.in |_. dsip.out |
| This is some
text written on
multiple lines.
| This is another
text written on
multiple lines.
| 5 6
4 7
8 6
4 6
7 3
3 2
2 4 7 4
4 1 4 4
5 2 6 5
2 1 5 4
8 2 3 7
3 3 4 2
| 2 3
1 2
2 3
2 2
1 2
1 4
|
h3. Explicaţie
...
== include(page="template/taskfooter" task_id="dsip") ==
Nu exista diferente intre securitate.
Diferente intre topic forum: