Ţara ta este în război, iar tu eşti şeful consiliului de apărare a ţării. Tocmai ai primit un mesaj îngrijorător: nave inamice au invadat spaţiul marin al ţării. Fiecare dintre cele nave se mişcă în linie dreaptă (mai exact de-a lungul axei Ox), cu viteză constantă.
Prin satelit ţi-a fost transmisă o hartă, pe care sunt marcate poziţiile navelor la momentul (distanţa faţă de origine exprimată în metri). Ai observat că la momentul toate navele se află în puncte de coordonate întregi.
Ai posibilitatea de a bombarda navele inamice utilizând un sistem special. Sistemul permite detonarea unor bombe, dar este posibilă doar detonarea tuturor bombelor exact în acelaşi timp. Când este detonată o bombă ea va distruge toate navele situate la o distanţă metri (raza de acţiune a bombei).
Cerinţă
Misiunea ta este să detonezi un număr minim de bombe astfel încât să fie distruse toate navele. De asemenea, doreşti să detonezi acel număr minim de bombe în timpul cel mai scurt.
Date de intrare
Fişierul de intrare bombe.in
conţine pe prima linie un număr natural , reprezentând numărul de nave, urmat de un număr real , reprezentând raza de acţiune a bombelor. Pe următoarele linii sunt descrise cele nave, câte o navă pe o linie. Pe o linie ce descrie o navă vor fi scrise două numere separate prin spaţiu , unde reprezintă un număr natural indicând poziţia navei la momentul , iar este un număr real indicând viteza (în ) cu care se deplasează nava. Dacă viteza este pozitivă, deplasarea navei se realizează în sensul axei Ox, iar dacă viteza este negativă, deplasarea navei se realizează în sensul invers al axei Ox.
Date de ieșire
Fişierul de ieşire bombe.out
va conţine o singură linie pe care vor fi scrise două numere separate prin spaţiu nrmin , unde reprezintă numărul minim de bombe necesare pentru distrugerea tuturor navelor, iar este timpul minim (exprimat în secunde) la care pot fi detonate cele bombe pentru a distruge toate navele. Timpul va fi afişat cu zecimale.
Restricții și precizări
- , pentru orice
- , pentru orice
- Este posibil ca la un moment dat două nave să se afle în acelaşi punct, dar niciodată nu vor exista nave în acelaşi punct.
- Timpul minim afişat este considerat corect dacă diferă prin cel mult de timpul minim corect.
Exemplu
bombe.in
6 0.25
2 0.5
3 -1
5 -1
5 0.333
8 0.5
10 -0.2
bombe.out
4 0.333