Detalii evaluare #30539833

Rezumat problemă

#3187 RATC2

Se dau două numere n p și o listă de n elemente cu urcările în autobuz a mai multor persoane a căror structura este prenume nume bilet_platit, fiecare intrare fiind plasată pe câte o linie. Câmpurile prenume și nume sunt șiruri de caractere, iar bilet_platit este un număr care poate fi 0 sau 1; 0 dacă persoana respectivă nu a plătit biletul sau 1 dacă a plătit biletul. Pentru fiecare bilet neplătit se va contoriza o penalizare persoanei.

Se cere :

a) Prenumele, numele și numărul de penalizări al persoanei care are număr maxim de penalizări. Dacă există mai multe persoane cu număr maxim de penalizări se cere afișarea persoanei care apare prima în ordine alfabetică.
b) Ordonarea listei de persoane descrescător după numărul de penalizări, la număr de penalizări egale, crescător după prenume, la prenume identice, crescător după nume.

Detalii

Problema RATC2 Operații I/O ratc2.in/ratc2.out
Limita timp 0.1 secunde Limita memorie Total: 64 MB / Stivă 8 MB
Id soluție #30539833 Utilizator Hirtescu Ciprian (gabrielhrt)
Fișier ratc2.c Dimensiune 2.89 KB
Data încărcării 20 August 2021, 14:28 Scor / rezultat 75 puncte

Evaluare


Mesaj compilare

ratc2.c: In function 'main':
ratc2.c:29:24: warning: assignment makes integer from pointer without a cast [enabled by default]
        s1[strlen(s1)-1]=NULL;

                        ^
ratc2.c:104:232: warning: suggest parentheses around '&&' within '||' [-Wparentheses]
           if(p[i].numar_penalizari<p[j].numar_penalizari||(p[i].numar_penalizari==p[j].numar_penalizari&&(strcmp(p[i].prenume,p[j].prenume)>0))||(p[i].numar_penalizari==p[j].numar_penalizari&&(strcmp(p[i].prenume,p[j].prenume)==0))&&(strcmp(p[i].nume,p[j].nume)>0))

                                                                                                                                                                                                                                        ^
ratc2.c:19:11: warning: ignoring return value of 'fscanf', declared with attribute warn_unused_result [-Wunused-result]
     fscanf(f,"%d%d",&n,&cerinta);

           ^
ratc2.c:28:13: warning: ignoring return value of 'fgets', declared with attribute warn_unused_result [-Wunused-result]
        fgets(s1,1000,f);

             ^

Rezultat evaluare

Test Timp Mesaj evaluare Scor posibil Scor obținut
1 0 secunde OK. 10 10 Exemplu
2 0 secunde OK. 10 10 Exemplu
3 0 secunde Raspuns gresit. 15 0
4 0 secunde OK. 15 15
5 0 secunde OK. 15 15
6 0 secunde OK. 15 15
7 0 secunde Raspuns gresit. 10 0
8 0 secunde OK. 10 10
Punctaj total 75

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