Lista de probleme 93

Filtrare

Se dă n și un sir cu n elemente, numere naturale. Folosind metoda HeapSort, să se sorteze crescător șirul și să se afișeze elementele sale, separate prin câte un spațiu.

Se dă un arbore binar care conține valori numere naturale. Să se determine diferența în valoare absolută a sumei valorilor memorate în subarborele stâng al rădăcinii și suma valorilor memorate în subarborele drept al rădăcinii.

Se dă un șir de numere asupra căruia se pot face două tipuri de operații: actualizare a unui interval (schimbarea valorii tuturor elementelor aflate între două poziții date) și interogarea unui interval (determinarea celei mai mici valori aflate între două poziții date).

Se dă un arbore binar care conține valori numere naturale. Se dau k noduri din arbore și se cere determinarea, pentru fiecare nod, a numărului de noduri din subarborele cu rădăcina în acel nod.

#2218 Set

Domnul Set vă oferă – ce altceva? – o mulțime de numere naturale A, inițial vidă. Pe mulțimea A se definesc următoarele operații:

  • 1 x – introduce valoarea x în A (dacă x este deja în A, atunci operația nu se efectuează)
  • 2 x – interogare: care valoare din A este cea mai mică, dar mai mare sau egală cu x (dacă o asemenea valoare nu există, sau dacă A este vidă, se va afișa -1)
  • 3 x y – șterge din A toate numerele din intervalul [x, y].

Dându-se N operații, trebuie să afișați răspunsul la fiecare operație de tip 2.

Se dă un arbore binar care conține valori numere naturale. Se dau k noduri din arbore și se cere determinarea, pentru fiecare nod, a numărului de noduri din subarborele cu rădăcina în acel nod care conțin valori prime.

Se dă un șir de matrice pătratice asupra căruia se pot face două tipuri de operații: actualizare a unui element (se înlocuiește matricea de pe acea poziție cu alta) și interogarea unui interval de indici (determinarea produsului matricelor memorate între cei doi indici, inclusiv).

#2217 Map

Domnul Map vă pune la dispoziție un șir a[1], a[2], …, a[n] de numere naturale. Pentru fiecare a[i] (i=1..n) trebuie să spuneți de câte ori apare acest element în secvența a[1], a[2], …, a[i].

Se dă un arbore binar care conține valori numere naturale. În acest arbore rădăcina este considerată pe nivelul 0, descendenții direcți ai rădăcinii pe nivelul 1, etc. Să se determine numărul de nivele k din arbore și, pentru fiecare nivel i de la 0 la k, numărul de noduri situate pe acel nivel.

Se dau N segmente în plan, fiecare fiind paralel cu una dintre axele de coordonate. Determinați numărul total de puncte de intersecție între două segmente.