== include(page=“template/taskheader" task_id="puncte3") ==
== include(page="template/taskheader" task_id="puncte3") ==
Avem $N$ puncte pe o dreaptă orizontală. Vrem să desenăm $M$ segmente pe această dreaptă astfel încât fiecare punct să fie conţinut de cel puţin un segment.
Care este lungimea minimă posibilă pentru segmentul de lungime maximă?
h2. Date de intrare
Fişierul de intrare $puncte3.in$ va conţine pe prima linie $T$, numărul de teste. În contiunare, fiecare test va avea o singură linie ce conţine numerele $N, A, B, C$.
Fişierul de intrare $puncte3.in$ conţine pe prima linie $T$, numărul de teste. În contiunare, fiecare test are o singură linie ce conţine numerele naturale $N, M, A, B, C$. $N$ şi $M$ au semnificaţia din enunţ. Coordonatele celor $N$ puncte vor fi generate folosind următoarele relaţii ( $X{~i~}$ fiind coordonata celui de-al $i$-lea punct $i = 1..N$):
$X{~1~} = 1, X{~i~} = (X{~i-1~} * A + B * i) mod C$ pentru $i = 2..N$
h2. Date de ieşire
În fişierul de ieşire $puncte3.out$ ...
În fişierul de ieşire $puncte3.out$ se va afişa pe câte o linie rezultatul cerut pentru fiecare din cele $T$ teste.
h2. Restricţii
* $... ≤ ... ≤ ...$
* $T = 5$
* $1 ≤ M < N ≤ 10^5^$
* $1 ≤ A ≤ 1000$
* $1 ≤ B ≤ 10^10^$
* $1 ≤ C ≤ 10^15^$
h2. Exemplu
table(example). |_. puncte3.in |_. puncte3.out |
| This is some
text written on
multiple lines.
| This is another
text written on
multiple lines.
| 1
5 2 2 1 9
| 3
|
h3. Explicaţie
...
Coordonatele punctelor sunt: 1, 4, 2, 8, 3. O soluţie posibilă este să folosim segmentele [1, 4] si [8, 8]. Lungimea segmentului maxim este 3.
== include(page="template/taskfooter" task_id="puncte3") ==