Detalii evaluare #55420137

Rezumat problemă

Într-un oraş se află o grădină de formă dreptunghiulară, formată din n x m pătrăţele, aranjate sub forma unei matrice cu n linii şi m coloane. Într-un pătrăţel poate fi cultivată o singură plantă, de o anumită specie. Speciile sunt identificate prin numere distincte cuprinse între 1 şi s. Datorită fenomenelor meteorologice, în unele pătrăţele nu mai există flori.

Solul fiecărui pătrăţel are un anumit coeficient de umiditate. Pentru cultivare, fiecare specie de flori are nevoie de o valoare minimă a umidităţii solului. Mai exact, dacă umiditatea solului dintr-un pătrăţel este mai mică decât umiditatea specifică plantei, aceasta nu poate fi cultivată în pătrăţelul respectiv. Proprietarul grădinii doreşte să o reamenajeze, prin păstrarea plantelor deja existente, dar şi prin cultivarea de noi plante în pătrăţelele din care florile au dispărut, astfel încât să se obţină o zonă de arie cât mai mare acoperită cu plante din aceeaşi specie.

Se numeşte zonă un grup de pătrăţele, astfel încât oricare două pătrăţele din zonă fie sunt învecinate (adică au o latură comună), fie se poate ajunge de la unul la celălalt, deplasându-ne numai de la un pătrăţel la unul învecinat cu el. Aria unei zone este egală cu numărul de pătrăţele din care este formată zona.

Determinaţi valoarea ariei pentru zona de arie maximă cultivată cu plante din aceeaşi specie, obţinută în urma reamenajării grădinii.

Olimpiada Municipala de Informatica, Iasi, 2007

Detalii

Problema gradina1 Operații I/O gradina1.in/gradina1.out
Limita timp 1 secunde Limita memorie Total: 64 MB / Stivă 8 MB
Id soluție #55420137 Utilizator Ene Doina (dinamobucuresti)
Fișier gradina1.cpp Dimensiune 3.10 KB
Data încărcării 14 Ianuarie 2025, 13:51 Scor / rezultat Eroare de compilare

Evaluare


Mesaj compilare

gradina1.cpp:18:1: error: stray '\304' in program
 int bfs(int startX, int startY, vector<vector<int>>& grădină, vector<vector<int>>& umiditate, vector<vector<bool>>& vizitat, int speciaCurentă, int umiditateMinimă) {

 ^
gradina1.cpp:18:1: error: stray '\203' in program
gradina1.cpp:18:1: error: stray '\304' in program
gradina1.cpp:18:1: error: stray '\203' in program
gradina1.cpp:18:1: error: stray '\304' in program
gradina1.cpp:18:1: error: stray '\203' in program
gradina1.cpp:18:1: error: stray '\304' in program
gradina1.cpp:18:1: error: stray '\203' in program
gradina1.cpp:19:5: error: stray '\304' in program
     int n = grădină.size();

     ^
gradina1.cpp:19:5: error: stray '\203' in program
gradina1.cpp:19:5: error: stray '\304' in program
gradina1.cpp:19:5: error: stray '\203' in program
gradina1.cpp:20:5: error: stray '\304' in program
     int m = grădină[0].size();

     ^
gradina1.cpp:20:5: error: stray '\203' in program
gradina1.cpp:20:5: error: stray '\304' in program
gradina1.cpp:20:5: error: stray '\203' in program
gradina1.cpp:42:17: error: stray '\304' in program
                 if (grădină[nx][ny] == speciaCurentă || grădină[nx][ny] == 0) {

                 ^
gradina1.cpp:42:17: error: stray '\203' in program
gradina1.cpp:42:17: error: stray '\304' in program
gradina1.cpp:42:17: error: stray '\203' in program
gradina1.cpp:42:17: error: stray '\304' in program
gradina1.cpp:42:17: error: stray '\203' in program
gradina1.cpp:42:17: error: stray '\304' in program
gradina1.cpp:42:17: error: stray '\203' in program
gradina1.cpp:42:17: error: stray '\304' in program
gradina1.cpp:42:17: error: stray '\203' in program
gradina1.cpp:43:21: error: stray '\304' in program
                     if (grădină[nx][ny] == 0 || umiditate[nx][ny] >= umiditateMinimă) {

                     ^
gradina1.cpp:43:21: error: stray '\203' in program
gradina1.cpp:43:21: error: stray '\304' in program
gradina1.cpp:43:21: error: stray '\203' in program
gradina1.cpp:43:21: error: stray '\304' in program
gradina1.cpp:43:21: error: stray '\203' in program
gradina1.cpp:56:5: error: stray '\304' in program
     int n, m, s, umiditateMinimă;

     ^
gradina1.cpp:56:5: error: stray '\203' in program
gradina1.cpp:57:5: error: stray '\304' in program
     cin >> n >> m >> s >> umiditateMinimă;

     ^
gradina1.cpp:57:5: error: stray '\203' in program
gradina1.cpp:59:5: error: stray '\304' in program
     vector<vector<int>> grădină(n, vector<int>(m));

     ^
gradina1.cpp:59:5: error: stray '\203' in program
gradina1.cpp:59:5: error: stray '\304' in program
gradina1.cpp:59:5: error: stray '\203' in program
gradina1.cpp:65:13: error: stray '\304' in program
             cin >> grădină[i][j];

             ^
gradina1.cpp:65:13: error: stray '\203' in program
gradina1.cpp:65:13: error: stray '\304' in program
gradina1.cpp:65:13: error: stray '\203' in program
gradina1.cpp:85:13: error: stray '\304' in program
             if (!vizitat[i][j] && (grădină[i][j] > 0 || grădină[i][j] == 0)) {

             ^
gradina1.cpp:85:13: error: stray '\203' in program
gradina1.cpp:85:13: error: stray '\304' in program
gradina1.cpp:85:13: error: stray '\203' in program
gradina1.cpp:85:13: error: stray '\304' in program
gradina1.cpp:85:13: error: stray '\203' in program
gradina1.cpp:85:13: error: stray '\304' in program
gradina1.cpp:85:13: error: stray '\203' in program
gradina1.cpp:86:17: error: stray '\304' in program
                 int speciaCurentă = (grădină[i][j] > 0) ? grădină[i][j] : -1;

                 ^
gradina1.cpp:86:17: error: stray '\203' in program
gradina1.cpp:86:17: error: stray '\304' in program
gradina1.cpp:86:17: error: stray '\203' in program
gradina1.cpp:86:17: error: stray '\304' in program
gradina1.cpp:86:17: error: stray '\203' in program
gradina1.cpp:86:17: error: stray '\304' in program
gradina1.cpp:86:17: error: stray '\203' in program
gradina1.cpp:86:17: error: stray '\304' in program
gradina1.cpp:86:17: error: stray '\203' in program
gradina1.cpp:87:17: error: stray '\304' in program
                 int ariaCurenta = bfs(i, j, grădină, umiditate, vizitat, speciaCurentă, umiditateMinimă);

                 ^
gradina1.cpp:87:17: error: stray '\203' in program
gradina1.cpp:87:17: error: stray '\304' in program
gradina1.cpp:87:17: error: stray '\203' in program
gradina1.cpp:87:17: error: stray '\304' in program
gradina1.cpp:87:17: error: stray '\203' in program
gradina1.cpp:87:17: error: stray '\304' in program
gradina1.cpp:87:17: error: stray '\203' in program
gradina1.cpp:18:58: error: expected ',' or '...' before 'din'
 int bfs(int startX, int startY, vector<vector<int>>& grădină, vector<vector<int>>& umiditate, vector<vector<bool>>& vizitat, int speciaCurentă, int umiditateMinimă) {

                                                          ^
gradina1.cpp: In function 'int bfs(int, int, std::vector<std::vector<int> >&)':
gradina1.cpp:19:13: error: cannot convert 'std::vector<std::vector<int> >' to 'int' in initialization
     int n = grădină.size();

             ^
gradina1.cpp:19:17: error: expected ',' or ';' before 'din'
     int n = grădină.size();

                 ^
gradina1.cpp:20:13: error: cannot convert 'std::vector<std::vector<int> >' to 'int' in initialization
     int m = grădină[0].size();

             ^
gradina1.cpp:20:17: error: expected ',' or ';' before 'din'
     int m = grădină[0].size();

                 ^
gradina1.cpp:25:5: error: 'vizitat' was not declared in this scope
     vizitat[startX][startY] = true;

     ^
gradina1.cpp:42:25: error: expected ')' before 'din'
                 if (grădină[nx][ny] == speciaCurentă || grădină[nx][ny] == 0) {

                         ^
gradina1.cpp:42:82: error: could not convert 'gr' from 'std::vector<std::vector<int> >' to 'bool'
                 if (grădină[nx][ny] == speciaCurentă || grădină[nx][ny] == 0) {

                                                                                  ^
gradina1.cpp:43:29: error: expected ')' before 'din'
                     if (grădină[nx][ny] == 0 || umiditate[nx][ny] >= umiditateMinimă) {

                             ^
gradina1.cpp:43:88: error: could not convert 'gr' from 'std::vector<std::vector<int> >' to 'bool'
                     if (grădină[nx][ny] == 0 || umiditate[nx][ny] >= umiditateMinimă) {

                                                                                        ^
gradina1.cpp: In function 'int main()':
gradina1.cpp:59:29: error: expected initializer before 'din'
     vector<vector<int>> grădină(n, vector<int>(m));

                             ^
gradina1.cpp:65:20: error: 'gr' was not declared in this scope
             cin >> grădină[i][j];

                    ^
gradina1.cpp:65:24: error: expected ';' before 'din'
             cin >> grădină[i][j];

                        ^
gradina1.cpp:85:36: error: 'gr' was not declared in this scope
             if (!vizitat[i][j] && (grădină[i][j] > 0 || grădină[i][j] == 0)) {

                                    ^
gradina1.cpp:85:40: error: expected ')' before 'din'
             if (!vizitat[i][j] && (grădină[i][j] > 0 || grădină[i][j] == 0)) {

                                        ^
gradina1.cpp:90:9: error: expected ')' before '}' token
         }

         ^
gradina1.cpp:90:9: error: expected primary-expression before '}' token
gradina1.cpp:90:9: error: expected ';' before '}' token

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