Lista de probleme 49

Filtrare

#4688 NrSeq

Se dă un șir a1, a2, …, an de numere întregi. În acest șir, o secvență de cel puțin două elemente ai, ai+1, …, aj este validă dacă ai este strict mai mic decât aj. Cu alte cuvinte, secvența de cel puțin două elemente trebuie să aibă capătul din stânga strict mai mic decât capătul din dreapta al secvenței. Să se determine câte secvențe valide sunt în șir.

Se dă o listă de N numere naturale, indexată de la 1 la N, și Q query-uri de forma op poz, unde op = 1, 2 este tipul operației.

Cele 2 operații sunt:

  • op = 1: se șterge din listă elementul aflat pe poziția poz
  • op = 2: se afișează elementul din listă aflat pe poziția poz

În planul xOy se găsesc n puncte de coordonate numere naturale, nu neapărat aflate pe poziții distincte. Pentru fiecare punct din plan de coordonate (x, y) trebuie să spuneți câte alte puncte au coordonatele (p, q) cu proprietatea că 0 ≤ p < x și 0 ≤ q ≤ y (atenție, p este strict mai mic decât x, iar q este mai mic sau egal cu y).

Se dau n puncte în plan, nu neapărat distincte, fiecare punct fiind dat prin coordonatele sale (x, y), unde x și y sunt numere naturale. Spunem că două puncte (x, y) și (i, j) sunt simetrice dacă x = j și y = i. Să se determine numărul perechilor de puncte simetrice.

Gigel are un șir cu N beculețe, numerotate de la 1 la N, inițial toate stinse. Cu acest șir Gigel face M operații, de două tipuri:

  • 1 i j: toate beculețe numerotate cu valori între i și j își schimbă starea
  • 2 k: se determină starea beculețului numerotat cu k.

Scrieți un program care să determine citește N, M și cele M operații și determină rezultatul fiecărei operații de tipul 2.

Josephus este un matematician înrăit.
Într-o zi acesta se joacă cu primele N numere prime, când se decide să își construiască propiul său șir circular format din aceste numere. Pe prima poziție se va afla primul număr prim, adică 2, iar mai apoi se parcurge circular șirul din K în K, completându-se cu restul de numere prime, până la repartizarea tuturor.

Se dă un vector de N numere naturale nenule, indexat de la 1.
Se cere să se raspundă la Q interogări de tipul:

  • pentru un interval [l, r] din vector, aflați costul total mimin, al egalizării tuturor elementelor din interval.

Se dau n numere naturale, reprezentând în ordine valorile nodurilor dintr-un arbore binar complet și m operații de tip 1 sau 2, aplicate unui nod k.

Operația de tip 1 determină valoarea nodului părinte a lui k, iar operația de tip 2 determină suma valorilor fiilor nodului k. Dacă k=1 sau dacă nodul k nu are fii, rezultatul va fi 0.

Afișați pentru fiecare operație rezultatul ei.

#1855 Heap

Se consideră o colecție de numere naturale, inițial vidă. Asupra ei se fac două tipuri de operații:

  • 1 x – valoarea x se adaugă în colecție;
  • 2 – cea mai mare valoare din colecție se afișează, apoi se elimină din colecție.

Dându-se un șir de m operații, să se afișeze în ordine rezultatele operațiilor de tip 2.

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.