Detalii evaluare #23084421

Rezumat problemă

#3400 culori5

În jurul muzeului din orașul Smallville exista un gard ce conține N scânduri de înălțimi diferite. Putem spune că scândura i are înălțimea Hi. Directorul muzeului le-a cerut angajaților să vopsească acest gard cu un număr minim de culori, astfel încât să se respecte următoarea condiție: pentru un număr întreg K cunoscut, orice secvență de K scânduri consecutive nu trebuie să conțină două scânduri de aceeași înălțime, colorate identic. Scrieţi un program care să găsească numărul minim de culori ce vor fi folosite pentru a colora gardul.

Detalii

Problema culori5 Operații I/O culori.in/culori.out
Limita timp 0.5 secunde Limita memorie Total: 4 MB / Stivă 2 MB
Id soluție #23084421 Utilizator narita andrei (naritaandrei7)
Fișier culori5.cpp Dimensiune 643 B
Data încărcării 22 Mai 2020, 10:35 Scor / rezultat Eroare de compilare

Evaluare


Mesaj compilare

culori5.cpp: In function 'int main()':
culori5.cpp:11:7: error: no match for 'operator=' (operand types are 'FILE {aka _IO_FILE}' and 'FILE* {aka _IO_FILE*}')
     in=fopen("culori.in","r");

       ^
culori5.cpp:11:7: note: candidates are:
In file included from /usr/include/stdio.h:74:0,
                 from culori5.cpp:1:
/usr/include/libio.h:245:8: note: _IO_FILE& _IO_FILE::operator=(const _IO_FILE&)
 struct _IO_FILE {
        ^
/usr/include/libio.h:245:8: note:   no known conversion for argument 1 from 'FILE* {aka _IO_FILE*}' to 'const _IO_FILE&'
/usr/include/libio.h:245:8: note: _IO_FILE& _IO_FILE::operator=(_IO_FILE&&)
/usr/include/libio.h:245:8: note:   no known conversion for argument 1 from 'FILE* {aka _IO_FILE*}' to '_IO_FILE&&'
culori5.cpp:12:8: error: no match for 'operator=' (operand types are 'FILE {aka _IO_FILE}' and 'FILE* {aka _IO_FILE*}')
     out=fopen("culori.out","w");

        ^
culori5.cpp:12:8: note: candidates are:
In file included from /usr/include/stdio.h:74:0,
                 from culori5.cpp:1:
/usr/include/libio.h:245:8: note: _IO_FILE& _IO_FILE::operator=(const _IO_FILE&)
 struct _IO_FILE {
        ^
/usr/include/libio.h:245:8: note:   no known conversion for argument 1 from 'FILE* {aka _IO_FILE*}' to 'const _IO_FILE&'
/usr/include/libio.h:245:8: note: _IO_FILE& _IO_FILE::operator=(_IO_FILE&&)
/usr/include/libio.h:245:8: note:   no known conversion for argument 1 from 'FILE* {aka _IO_FILE*}' to '_IO_FILE&&'
culori5.cpp:16:28: error: cannot convert 'FILE {aka _IO_FILE}' to 'FILE* {aka _IO_FILE*}' for argument '1' to 'int fscanf(FILE*, const char*, ...)'
     fscanf(in,"%d %d",&n,&k);

                            ^
culori5.cpp:18:29: error: cannot convert 'FILE {aka _IO_FILE}' to 'FILE* {aka _IO_FILE*}' for argument '1' to 'int fscanf(FILE*, const char*, ...)'
         fscanf(in,"%d",&v[i]),fr[v[i]]++,maxc=max(maxc,fr[v[i]]);

                             ^
culori5.cpp:22:31: error: cannot convert 'FILE {aka _IO_FILE}' to 'FILE* {aka _IO_FILE*}' for argument '1' to 'int fscanf(FILE*, const char*, ...)'
         fscanf(in,"%d",&v[pos]);

                               ^
culori5.cpp:30:26: error: cannot convert 'FILE {aka _IO_FILE}' to 'FILE* {aka _IO_FILE*}' for argument '1' to 'int fprintf(FILE*, const char*, ...)'
     fprintf(out,"%d",maxc);

                          ^
culori5.cpp:31:14: error: cannot convert 'FILE {aka _IO_FILE}' to 'FILE* {aka _IO_FILE*}' for argument '1' to 'int fclose(FILE*)'
     fclose(in);

              ^
culori5.cpp:32:15: error: cannot convert 'FILE {aka _IO_FILE}' to 'FILE* {aka _IO_FILE*}' for argument '1' to 'int fclose(FILE*)'
     fclose(out);

               ^
culori5.cpp:14:16: warning: unused variable 'x' [-Wunused-variable]
     int maxc=0,x,pos=1;

                ^

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