Detalii evaluare #50649940

Rezumat problemă

Un număr natural se numește extrapar dacă poate fi scris ca sumă de puteri distincte ale lui 2, puteri care au exponent par. Numărul 0 este considerat, de asemenea, extrapar. Considerând reprezentarea în baza 2 pentru un număr natural, se numerotează pozițiile cifrelor din reprezentare, de la dreapta către stânga, începând cu 0. Asupra reprezentării în baza 2 trebuie să se efectueze o singură operație. Operația constă din eliminarea a exact K cifre situate pe poziții consecutive. Fiind date reprezentările în baza 2 pentru N numere naturale, să se determine pentru fiecare dintre ele dacă se poate obține un număr extrapar în condițiile de mai sus.

Detalii

Problema extrapare Operații I/O extrapare.in/extrapare.out
Limita timp 0.3 secunde Limita memorie Total: 128 MB / Stivă 64 MB
Id soluție #50649940 Utilizator Ardelean Mihai (Ardelean_Mihai_)
Fișier extrapare.cpp Dimensiune 2.31 KB
Data încărcării 18 Aprilie 2024, 15:47 Scor / rezultat 80 puncte

Evaluare


Mesaj compilare

extrapare.cpp: In function 'int main()':
extrapare.cpp:16:27: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
                 if(j%2==0 && s.size()%2==0 || j%2==1 && s.size()%2==1) {

                           ^
extrapare.cpp:24:43: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
                 for(int j=pozaux;j<s.size();j++) fout<<s[j];

                                           ^
extrapare.cpp:31:35: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
                 if(pozaux>=s.size()) fout<<0<<'\n';

                                   ^
extrapare.cpp:33:43: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
                 for(int j=pozaux;j<s.size();j++) fout<<s[j];

                                           ^
extrapare.cpp:39:34: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
                     if(s[j]=='1' && j%2==1 || s[j]=='0' && j%2==0 && s[j+1]!='0' ||  s[j]=='0' && j%2==0 && s[j-1]!='0') {

                                  ^
extrapare.cpp:39:106: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
                     if(s[j]=='1' && j%2==1 || s[j]=='0' && j%2==0 && s[j+1]!='0' ||  s[j]=='0' && j%2==0 && s[j-1]!='0') {

                                                                                                          ^
extrapare.cpp:46:46: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
                     for(int j=poz+1;j<s.size();j++) {

                                              ^
extrapare.cpp:48:39: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
                             if(j%2==1 && k%2==0 || j%2==0 && k%2==1) {

                                       ^
extrapare.cpp:54:39: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
                             if(j%2==0 && k%2==1 || j%2==1 && k%2==0) {

                                       ^
extrapare.cpp:63:46: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
                     for(int j=poz+1;j<s.size();j++) fout<<s[j];

                                              ^

Rezultat evaluare

Test Timp Mesaj evaluare Scor posibil Scor obținut
1 0.016 secunde OK. 5 5
2 0.012 secunde OK. 5 5
3 0.172 secunde OK. 7 7
4 0.004 secunde OK. 5 5
5 0 secunde OK. 5 5
6 0 secunde Raspuns gresit. 5 0
7 0 secunde OK. 5 5
8 0 secunde OK. 5 5
9 0.02 secunde Raspuns gresit. 7 0
10 0 secunde OK. 4 4
11 0 secunde OK. 5 5
12 0 secunde OK. 5 5
13 0.012 secunde OK. 5 5
14 0 secunde OK. 1 1
15 0 secunde OK. 1 1
16 0 secunde OK. 1 1
17 0 secunde OK. 1 1
18 0 secunde OK. 1 1
19 0 secunde OK. 1 1
20 0 secunde OK. 2 2
21 0 secunde OK. 2 2
22 0 secunde OK. 2 2
23 0 secunde OK. 2 2
24 0 secunde OK. 2 2
25 0 secunde OK. 2 2
26 0 secunde Raspuns gresit. 2 0
27 0 secunde Raspuns gresit. 2 0
28 0 secunde OK. 2 2
29 0 secunde OK. 2 2
30 0 secunde Raspuns gresit. 2 0
31 0 secunde Raspuns gresit. 2 0
32 0 secunde OK. 2 2
Punctaj total 80

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 extrapare 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ă.