Detalii evaluare #58761339

Rezumat problemă

#1648

Negrimon a găsit într-o culegere această problemă #legendară: peste un şir de caractere de lungime N, alcătuit din litere mici ale alfabetului englez, se efectuează M operaţii de următoarele tipuri:

  1. Se inserează în şir caracterul x, pe poziţia p, după deplasarea cu o poziţie la dreapta a caracterelor situate pe poziţiile mai mari sau egale cu p. Dacă valoarea p este egală cu lungimea şirului, x este alipit la finalul şirului.
  2. Se răspunde cu 1 dacă secvenţa de litere care începe la poziţia q1 şi are lungimea lg coincide literă cu literă, cu secvenţa care începe la poziţia q2 şi are aceeaşi lungime lg şi se răspunde cu 0 în caz contrar. Este posibil ca cele două secvenţe să se suprapună complet sau parţial în şirul din care ele fac parte.

Fiind dat un şir de N litere mici şi o listă de M operaţii, să se afişeze răspunsurile la operaţiile de tip 2, respectând ordinea din succesiunea de operaţii date.

Urmasii lui Moisil, 2016
Fișiere Candale Silviu (silviu) Stefan Negrus concurs

Detalii

Problema Diez Operații I/O diez.in/diez.out
Limita timp 2 secunde Limita memorie Total: 128 MB / Stivă 8 MB
Id soluție #58761339 Utilizator Raduta Mihail (Mihailraduta)
Fișier diez.cpp Dimensiune 6.57 KB
Data încărcării 03 August 2025, 13:05 Scor/rezultat 100 puncte

Evaluare

Mesaj compilare

diez.cpp: In constructor 'FenwickTree::FenwickTree(int)':
diez.cpp:37:9: warning: 'FenwickTree::size' will be initialized after [-Wreorder]
     int size;

         ^
diez.cpp:36:22: warning:   'std::vector<int> FenwickTree::bit' [-Wreorder]
     std::vector<int> bit;

                      ^
diez.cpp:39:5: warning:   when initialized here [-Wreorder]
     FenwickTree(int n) : size(n + 1), bit(n + 1, 0) {}

     ^

Rezultat evaluare

Test Timp Mesaj evaluare Scor posibil Scor obținut
1 0 secunde OK. 4 4
2 0 secunde OK. 4 4
3 0.008 secunde OK. 4 4
4 0.148 secunde OK. 4 4
5 0.444 secunde OK. 4 4
6 0.476 secunde OK. 4 4
7 0.228 secunde OK. 4 4
8 0.28 secunde OK. 4 4
9 0.496 secunde OK. 4 4
10 0.42 secunde OK. 4 4
11 0.496 secunde OK. 4 4
12 0.348 secunde OK. 4 4
13 0.492 secunde OK. 4 4
14 0.528 secunde OK. 4 4
15 0.328 secunde OK. 4 4
16 0.476 secunde OK. 4 4
17 0.536 secunde OK. 4 4
18 0.3 secunde OK. 4 4
19 0.304 secunde OK. 4 4
20 0.32 secunde OK. 4 4
21 0.46 secunde OK. 4 4
22 0.496 secunde OK. 4 4
23 0.456 secunde OK. 4 4
24 0.54 secunde OK. 4 4
25 0.48 secunde OK. 4 4
Punctaj total 100

Cum funcționează evaluarea?

www.pbinfo.ro permite evaluarea a două tipuri de probleme:

  • probleme la care rezolvarea presupune scrierea unui program complet
  • probleme la care rezolvarea presupune scrierea unei secvențe de program - câteva instrucțiuni, o listă de declarații, una sau mai multe funcții, etc.

Problema Diez face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:

  • Programul sursă este compilat folosind compilatorul corespunzător. Dacă în urma compilării se obțin erori sau avertismente, acestea sunt afișate în această pagină.
  • Dacă programul a fost compilat, executabilul obținut va fi rulat, furnizându-i-se unul sau mai multe seturi de date de intrare, în concordanță cu restricțiile specifice problemei. Pentru fiecare set de date se obține un anumit punctaj, în raport cu corectitudinea soluției tale.

Suma punctajelor acordate pe testele utilizate pentru verificare este 100. Astfel, soluția ta poate obține cel mult 100 de puncte, caz în care se poate considera corectă.

Du-te sus!