.campion
conectare | înregistrare | căutare
Pagina principală » Probleme » agendatelefonica

ultima problemă
grupă: mică
sursă: OMI 2016
ultimul articol
autor: Prof. Radu Vişinescu
ultimul software
autor: Prof. Emanuela Cerchez
agendatelefonica


Timp maxim de execuţie / test:
0.4s
Memorie totala disponibilă / stivă:
32MB / 1MB

Dezvoltăm un smartphone pentru piaţa low-entry. Bugetul alocat platformei hardware este scăzut, implicit şi procesorul este unul ieftin cu putere de calcul mică. Una din cerinţele proiectului este ca agenda telefonică să suporte un număr mare de contacte, iar timpul de căutare al unui contact să fie insesizabil utilizatorului final. Căutarea în agendă se face după prefix – sau, altfel spus, „căutare stil AJAX” – iar lista se actualizează cu noi contacte de pe rețelele sociale.

Cerinţă

Să se realizeze un program care să indexeze lista de contacte pentru o căutare rapidă. Cele două operații posibile sunt de adăugare a unui contact și de aflare a numărului numelor de contacte cu un anumit prefix.

Date de intrare

Programul citeşte din fişierul agendatelefonica.in. Fişierul conţine un număr N și N linii, câte o linie pentru fiecare operație. Pe o linie se găsește un număr, urmat de un spațiu și un șir de caractere. Dacă numărul este 0, numele dat de șirul de caractere este introdus în listă. Dacă numărul este 1, șirul de caractere este prefixul pentru care se vrea numărul de contacte.

Date de ieşire

Programul scrie K linii (K este numărul de 1 din fișierul de intrare) în fişierul agendatelefonica.out, fiecare linie reprezentând numărul de contacte din listă care au respectivul prefix la acel moment.

Restricţii

Cuvintele au până la 100 caractere alfabetice mici.
Cuvintele identice se numără separat.
Numărul de operații nu depășește 10.000.
Unele biblioteci de citire/scriere pot avea funcții lente.

Exemple

agendatelefonica.inagendatelefonica.out
7 0 stefan 1 stef 0 ilie 0 mihaela 1 miha 0 mihai 1 miha 1 1 2

propunător: Stud. Vlad Manea
FII
vlad.c.manea@gmail.com
Probleme recomandate
surse trimise | ajutor