Nu aveti permisiuni pentru a descarca fisierul grader_test5.in
Diferente pentru problema/mezzaluna intre reviziile #10 si #4
Nu exista diferente intre titluri.
Diferente intre continut:
== include(page="template/taskheader" task_id="mezzaluna") ==
Dorin are un blat olimpic infinit de pizza ce se intinde pe axa OX. Acesta a observat faptul ca, cu cat taie mai des blatul de pizza, cu atat gustul va deveni mai bun. Astfel, avand la dispozitie un set de $N$ intervaledeschise, fiecare interval reprezentand o taietura pe care acesta poate sa o faca, scopul vostru este sa determinati numarul maxim de taieturi pe care Dorin le poate efectua.
Dorin are un blat olimpic infinit de pizza ce se intinde pe axa OX. Acesta a observat faptul ca, cu cat taie mai des blatul de pizza, cu atat gustul va deveni mai bun. Astfel, avand la dispozitie un set de $N$ intervale, fiecare interval reprezentand o taietura pe care acesta poate sa o faca, scopul vostru este sa determinati numarul maxim de taieturi pe care Dorin le poate efectua.
Formal, Dorin poate selecta un interval pe care sa il taie in unul din cele $2$ cazuri:
* Blatulcurent este infinit. Prin taierea cu un nou interval $(C, D)$, blatul ia forma acestui interval. * Blatulcurent este un interval $(A, B)$. Putem selecta un nou interval $(C, D)$ doar daca acesta micsoreaza intervalul curent. Formal, daca intersectia dintre $(A, B)$ si $(C, D)$ este un interval $(X, Y)$, acesta trebuie sa fie*nevid* sitrebuie sa difere deintervalul$(A, B)$. Noul blat va lua forma intervalului $(X, Y)$.A se nota caintervalele fiinddeschise, intervalul$(X, X)$este considerat a fi vid.
* Blatul este infinit. Prin taierea cu un nou interval $[C, D]$, blatul ia forma acestui interval. * Blatul este un interval $[A, B]$. Putem selecta un nou interval $[C, D]$ doar daca acesta micsoreaza intervalul curent. Formal, daca intersectia dintre $[A, B]$ si $[C, D]$ este un interval $[X, Y]$, acesta trebuie sa fie diferit de $[A, B]$ sau multimea vida. Noul blat va lua forma intervalului $[X, Y]$ (intersectia in capete este considerata a fi multimea vida).
Dandu-se $N$ si multimea celor $N$ intervale cu care putem taia blatul, determinati numarul maxim de taieturi pe care il putem face, precum si numarul de moduri in care putem efectua aceste taieturiin numar maxim. Douamoduri de ataiablatulsuntconsideratedistincte dacamultimiledeintervaleintermediareprincaretrece formablatului peparcursul taieriisuntdistincte.A senota ca esteposibil ca o anumitamultimede intervaleintermediaresa fieobtinutaprinserii deoperatiicarefolosescintervale diferite din cele $N$oferite, dar ea va fi numarataosingura data.
Dandu-se $N$ si multimea celor $N$ intervale cu care putem taia blatul, determinati numarul maxim de taieturi pe care il putem face, precum si numarul de moduri in care putem efectua aceste taieturi. Doua solutii se considera distincte daca ordinea capetelor de intervale care sunt taiate este diferita (nu conteaza intervalele in sine pe care le folosim).
h2. Date de intrare
h2. Restricţii
* $1 ≤ A<B ≤ 2.000$
* $1 ≤ A &l; B ≤ 2.000 $
* $1 ≤ N ≤ 100.000$
* Pentru teste in valoare de $30$ de puncte, se garanteaza ca $N ≤ 200$ * Rezolvarea corecta a primei cerinte valoreaza $40%$ din punctajul testului
h2. Exemplu
