Preskoči na glavno vsebino
Učilnica FRI 23/24
  • Domov
  • Več
Zapri
Preklopi iskalni vnos
Slovenščina ‎(sl)‎
English ‎(en)‎ Slovenščina ‎(sl)‎ Македонски ‎(mk)‎ Русский ‎(ru)‎ 한국어 ‎(ko)‎
Trenutno uporabljate gostujoči dostop
Prijavite se
Domov
Course Activities
Forumi Naloge Viri
Nedavno dostopani predmeti
You are not enrolled in any courses
  1. aps1uni
  2. Vreča

Vreča

Zahteve zaključka
Rok za oddajo: nedelja, 12. november 2023, 23.59

Implementirajte vrečo (bag/multiset), ki bo hranila cela števila in omogočala dodajanje elementov, odstranjevanje elementov in poizvedbe o trenutnem številu elementov v vreči, ki imajo vrednost z danega intervala $[a_i, b_i]$, torej vključno z obema mejama. Če je neko število večkrat dodano v vrečo, mora vreča hraniti več enakih števil. Ko pa želimo neko število odstaniti iz vreče, v primeru več enakih elementov odstranimo zgolj enega. Če števila ni v vreči, odstranjevanje ne spremeni vsebine vreče.

Omejitve podatkov:

  • $1 \leq N \leq 10^6$
  • $1 \leq x_i \leq 10^6$ (nabor možnih vrednosti je dokaj majhen)
  • $|s_i| \leq 10^6$

Vhodni in izhodni podatki:

V prvi vrstici je najprej podano število operacij $N$. V naslednjih $N$ vrsticah so pari števil $s_i, x_i$, kjer $s_i<0$ pomeni, da število $x_i$ dodamo v vrečo, $s_i=0$ pomeni, da število $x_i$ odstranimo iz vreče in $s_i>0$, da naredimo poizvedbo na intervalu $[a_i, b_i]$, kjer je $a_i=\min(s_i, x_i)$ in $b_i=\max(s_i, x_i)$.

Na izhodu izpišemo število, ki ga dobimo, če seštejemo rezultate poizvedb.

Primer vhoda:

12
-1 2
-1 12
-3 4
-1 2
1 3
0 2
1 2
4 2
0 53
0 12
900 9
1 100

Pravilen izhod:

7

Odgovori na poizvedbe so po vrsti 2, 1, 2, 0, in 2.

◄ Autocomplete
zapiski - Požrešni algoritmi ►
Trenutno uporabljate gostujoči dostop (Prijavite se)
Pridobi mobilno aplikacijo Obvestilo o avtorskih pravicah
Stran poganja Moodle