Detalii evaluare #49064091

Rezumat problemă

#1953 tabel1

Marius se pregătește pentru olimpiada de informatică. Astăzi, profesoara lui i-a predat șirurile de caractere. După școală și-a lăsat caietul de informatică pe birou, și frățiorul lui, pus pe șotii, a deschis caietul la ultima lecție și a văzut scris mare: TABEL ASCII. Pentru că îi place să scrie, s-a gândit să modifice puțin numerele din tabel. Așa că a șters unele din ele, scriind altele în loc. Marius nu a observat acest lucru și a început să rezolve problemele date de doamna profesoară. Are nevoie de ajutor, de aceea te roagă să îl ajuți să rezolve următoarea problemă, folosind tabelul ascii din caietul său: “Se dă un șir de caractere format din cifre și litere mari și mici ale alfabetului englez. Afișați suma valorilor tuturor literelor (valoarea unei litere se află în tabelul Ascii) și cel mai mare număr vale-deal care se poate forma cu cifrele care apar în șir. Un număr vale-deal are cifre distincte și cifrele din prima jumătate sunt în ordine descrescătoare, iar dele din a doua jumătate în ordine crescătoare. Exemplu : 98367 e număr vale-deal, 998367 nu e număr vale-deal, 987 nu e număr vale-deal.”

Cunoscând șirul format din cifre zecimale, litere mici și litere mari ale alfabetului englez, respectiv numerele modificate de fratele lui Marius, scrieți un program care să determine:

a) suma codurilor ASCII ale literelor din sir (folosind tabelul din caietul lui Marius);
b) cel mai mare număr vale-deal care are cifre ce apar în șir.

Detalii

Problema tabel1 Operații I/O tabel1.in/tabel1.out
Limita timp 0.1 secunde Limita memorie Total: 4 MB / Stivă 1 MB
Id soluție #49064091 Utilizator Cernat Bogdan (Bogdan4415)
Fișier tabel1.cpp Dimensiune 1.13 KB
Data încărcării 14 Februarie 2024, 09:58 Scor / rezultat 10 puncte

Evaluare


Mesaj compilare

tabel1.cpp: In function 'int main()':
tabel1.cpp:24:8: warning: array subscript has type 'char' [-Wchar-subscripts]
     v[s] = nr;

        ^
tabel1.cpp:29:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
 for(i = 0;i<strlen(f);i++)

                     ^
tabel1.cpp:32:23: warning: array subscript has type 'char' [-Wchar-subscripts]
     sum = sum + v[f[i]];

                       ^
tabel1.cpp:42:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
 for(i = 0;i<strlen(b);i++)

                     ^
tabel1.cpp:11:18: warning: unused variable 'l' [-Wunused-variable]
 int nr,v[26],k,i,l,sum = 0,o=0,p[1001],aux,j,nr1 = 0,nr2 = 0,inv = 0;

                  ^
tabel1.cpp:15:8: warning: array subscript is above array bounds [-Warray-bounds]
     v[i] = i;

        ^
tabel1.cpp:19:8: warning: array subscript is above array bounds [-Warray-bounds]
     v[i] = i;

        ^

Rezultat evaluare

Test Timp Mesaj evaluare Scor posibil Scor obținut
1 0 secunde Raspuns gresit. 10 0
2 0 secunde Raspuns gresit. 10 0
3 0 secunde Raspuns gresit. 10 0
4 0 secunde OK. 10 10 Exemplu
5 0 secunde Raspuns gresit. 10 0
6 0 secunde Raspuns gresit. 10 0
7 0 secunde Caught fatal signal 11 10 0
8 0 secunde Caught fatal signal 11 10 0
9 0 secunde Caught fatal signal 11 10 0
10 0 secunde Caught fatal signal 11 10 0
Punctaj total 10

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