Diferente pentru problema/h intre reviziile #3 si #6

Nu exista diferente intre titluri.

Diferente intre continut:

== include(page="template/taskheader" task_id="h") ==
Gigel are $N$ segmente verticale, numerotate de la $1$ la $N$. Un segment $K$ este caracterizat prin valorile $X{~K~}$, $Yjos{~K~}$ si $Ysus{~K~}$. Coordonatele capatului de jos al segmentului $K$ sunt $(X{~K~},Yjos{~K~})$, iar coordonatele capatului de sus sunt $(X{~K~},Ysus{~K~})$. Gigel vrea sa aleaga doua dintre aceste segmente si sa le "taie" in asa fel incat ambele sa aiba aceeasi valoare pentru $Yjos$, respectiv pentru $Ysus$. Presupunand ca segmentele alese sunt $A$ si $B$, noua valoare a lui $Yjos$ pentru fiecare din cele doua segmente va fi $max{Yjos{~A~},Yjos{~B~}}$, iar noua valoare a lui $Ysus$ pentru fiecare din cele doua segmente va fi $min{Ysus{~A~},Ysus{~B~}}$. Sa notam prin $YJ$ valoarea $max{Yjos{~A~},Yjos{~B~}}$ si prin $YS$ valoarea $min{Ysus{~A~},Ysus{~B~}}$. Daca nu este adevarata relatia $YJ ≤ YS$, atunci perechea de segmente $(A,B)$ nu este valida (iar Gigel nu ar alege niciodata o pereche invalida). Pentru o pereche valida de segmente $(A,B)$, dupa operatia de "taiere" a segmentelor, el va uni segmentele printr-un segment orizontal, pentru a forma o figura care seamana foarte mult cu litera "H". Segmentul orizontal va fi trasat intre coordonatele $(X{~A~},Y)$ si $(X{~B~},Y)$, cu $YJ ≤ Y ≤ YS$ (nu este importanta valoarea exacta a coordonatei $Y$ a segmentului trasat). Dupa obtinerea literei "H", Gigel calculeaza "lungimea" acesteia. Lungimea literei "H" este definita ca fiind suma celor $3$ laturi ale literei: $2*(YS-YJ)+(X{~B~}-X{~A~})$.
Gigel are $N$ segmente verticale, numerotate de la $1$ la $N$. Un segment $K$ este caracterizat prin valorile $X{~K~}$, $Yjos{~K~}$ si $Ysus{~K~}$. Coordonatele capatului de jos al segmentului $K$ sunt $(X{~K~},Yjos{~K~})$, iar coordonatele capatului de sus sunt $(X{~K~},Ysus{~K~})$. Gigel vrea sa aleaga doua dintre aceste segmente si sa le "taie" in asa fel incat ambele sa aiba aceeasi valoare pentru $Yjos$, respectiv pentru $Ysus$. Presupunand ca segmentele alese sunt $A$ si $B$, noua valoare a lui $Yjos$ pentru fiecare din cele doua segmente va fi $max{Yjos{~A~},Yjos{~B~}}$, iar noua valoare a lui $Ysus$ pentru fiecare din cele doua segmente va fi $min{Ysus{~A~},Ysus{~B~}}$. Sa notam prin $YJ$ valoarea $max{Yjos{~A~},Yjos{~B~}}$ si prin $YS$ valoarea $min{Ysus{~A~},Ysus{~B~}}$. Daca nu este adevarata relatia $YJ ≤ YS$, atunci perechea de segmente $(A,B)$ nu este valida (iar Gigel nu ar alege niciodata o pereche invalida). Pentru o pereche valida de segmente $(A,B)$, dupa operatia de "taiere" a segmentelor, el va uni segmentele printr-un segment orizontal, pentru a forma o figura care seamana foarte mult cu litera "H". Segmentul orizontal va fi trasat intre coordonatele $(X{~A~},Y)$ si $(X{~B~},Y)$, cu $YJ ≤ Y ≤ YS$ (nu este importanta valoarea exacta a coordonatei $Y$ a segmentului trasat). Dupa obtinerea literei "H", Gigel calculeaza "lungimea" acesteia. Lungimea literei "H" este definita ca fiind suma celor $3$ laturi ale literei: $2*(YS-YJ)+|X{~B~}-X{~A~}|$.
Ajutati-l pe Gigel sa aleaga o pereche valida de segmente pentru care lungimea literei $H$ obtinuite sa fie maxima.
h2. Date de intrare
Prima linie a fisierului de intrare $h.in$ contine numarul intreg contine numarul intreg $N$, reprezentand numarul de segmente verticale. Fiecare din urmatoarele $N$ linii contine $3$ numere intregi, separate prin cate un spatiu: $X$, $Yjos$, $Ysus$ (avand semnificatia mentionata anterior). A $K$-a linie dintre acestea $N$ contine valorile ce caracterizeaza al $K$-lea segment.
Prima linie a fisierului de intrare $h.in$ contine numarul intreg contine numarul intreg $N$, reprezentand numarul de segmente verticale. Fiecare din urmatoarele $N$ linii contine $3$ numere intregi, separate prin cate un spatiu: $X$, $Yjos$, $Ysus$ (avand semnificatia mentionata anterior). A $K$-a linie dintre aceste $N$ linii contine valorile ce caracterizeaza al $K$-lea segment.
h2. Date de iesire
* $1 ≤ N ≤ 65535$
* Pentru fiecare segment:
** $0 ≤ X, Yjos, Ysus $le; 100 000 000$
** $0 ≤ X, Yjos, Ysus ≤ 100 000 000$
** $Yjos ≤ Ysus$
* Va exista cel putin o pereche valida de segmente.
== include(page="template/taskfooter" task_id="h") ==
 
 
 

Nu exista diferente intre securitate.

Diferente intre topic forum:

 
2374