roci

Time limit: 0.03s Memory limit: 2MB Input: roci.in Output: roci.outPoints by default: 10p

Într-un institut de geologie se folosesc mai multe tipuri de roci pentru analize spectrale. Rocile sunt păstrate în nn recipiente, numerotate distinct de la 11 la nn, în ordinea colectării. Pentru efectuarea unui experiment se alege numărul maxim de roci, în ordinea în care au fost colectate, astfel încât numerele de minerale din compoziţia rocilor alese să fie consecutive, ordonate strict crescător.

Cerinţă:

Dat nn, numărul de roci şi numărul de minerale conţinute de fiecare rocă, în ordinea colectării acestora, să se determine numărul minim de experimente care se pot efectua astfel încât să fie folosite toate rocile.

Date de intrare

Din fişierul text roci.in se citesc, din prima linie, nn numărul de roci apoi, din următoarea linie, separate prin câte un spaţiu, numărul de minerale conţinute de fiecare rocă.

  • nn, numărul de roci
  • m1 m2mnm_1 \ m_2 \dots m_n, mim_i - număr natural nenul, reprezentând numărul de minerale din roca ii

Date de ieşire

Fişierul de ieşire roci.out conţine

  • GG, numărul minim de grupe de roci care se pot forma.

Restricţii şi precizări

  • 0<n100 0000 < n \leq 100 \ 000,
  • 0<mi10 0000 < m_i \leq 10 \ 000, pentru 1in1 \leq i \leq n
  • Numărul de minerale conţinute poate fi acelaşi pentru roci diferite.
  • O rocă poate fi folosită într-o singură grupă.

Exemplu

roci.in

7
3 10 4 4 5 11 6

roci.out

3

Explicație

Se formează grupele:

  • 3 4 5 63 \ 4 \ 5 \ 6
  • 10 1110 \ 11
  • 44

Log in or sign up to be able to send submissions!