Detalii evaluare #51525647

Rezumat problemă

#2898 nave

Echipajul navei Enterprise, a descoperit pe planeta Marte, zona în care sunt amplasate b baze militare care adăpostesc navele de luptă ale marțienilor. Echipajul navei a reușit să cartografieze zona și a împărțit harta planetei în n x m zone de latură 1, dispuse pe n linii (numerotate de sus în jos de la 1 la n) și m coloane (numerotate de la stânga la dreapta de la 1 la m). Astfel fiecare zonă poate fi identificată prin numărul liniei și al coloanei pe care se află. În fiecare astfel de zonă se află o bază a marțienilor ce adăpostește un număr de nave. Căpitanul navei Enterprise, Jean-Luc Picard a elaborat o strategie de atac terestru a acestor baze militare.
Nava Enterprise poate ateriza într-o zonă în care nu se află o bază marțiană și poate lansa un singur atac (deoarece după primul atac bazele marțiene își vor activa scuturile de protecție). La un atac se vor emite simultan 2 raze laser care vor distruge toate navele marțiene existente în bazele aflate pe direcția acestor raze, în ambele sensuri. Razele sunt emise din centrul zonei în care a aterizat Enterprise și fac unghiuri de 45o, respectiv 135o cu linia pe care se află Enterprise.

Scrieți un program care, cunoscând configurația bazelor marțiene, determină numărul maxim de nave marțiene pe care Enterprise le poate distruge la un singur atac, precum și linia și coloana zonei în care poate ateriza nava Enterprise astfel încât să distrugă un număr maxim de nave; dacă există mai multe zone în care poate ateriza convenabil pentru Enterprise este să aleagă zona pentru care linia este maximă; dacă există mai multe zone pe linia maximă, se va alege cea pentru care coloana este maximă.

Olimpiada Municipală Iași, clasele VII-VIII

Detalii

Problema nave Operații I/O nave.in/nave.out
Limita timp 0.4 secunde Limita memorie Total: 5 MB / Stivă 2 MB
Id soluție #51525647 Utilizator ochesel codrin (codrin20)
Fișier nave.cpp Dimensiune 2.89 KB
Data încărcării 04 Iulie 2024, 18:11 Scor / rezultat Eroare de compilare

Evaluare


Mesaj compilare

nave.cpp:67:13: error: redefinition of 'std::ifstream cin'
 ifstream cin("nave.in");

             ^
nave.cpp:5:10: error: 'std::ifstream cin' previously declared here
 ifstream cin("nave.in");

          ^
nave.cpp:68:15: error: redefinition of 'std::ofstream cout'
 ofstream cout ("nave.out");

               ^
nave.cpp:6:10: error: 'std::ofstream cout' previously declared here
 ofstream cout ("nave.out");

          ^
nave.cpp:70:5: error: redefinition of 'int n'
 int n, m, b;

     ^
nave.cpp:8:5: error: 'int n' previously declared here
 int n, m, b;

     ^
nave.cpp:70:8: error: redefinition of 'int m'
 int n, m, b;

        ^
nave.cpp:8:8: error: 'int m' previously declared here
 int n, m, b;

        ^
nave.cpp:70:11: error: redefinition of 'int b'
 int n, m, b;

           ^
nave.cpp:8:11: error: 'int b' previously declared here
 int n, m, b;

           ^
nave.cpp:71:5: error: redefinition of 'int x'
 int x, y, val;

     ^
nave.cpp:9:5: error: 'int x' previously declared here
 int x, y, val;

     ^
nave.cpp:71:8: error: redefinition of 'int y'
 int x, y, val;

        ^
nave.cpp:9:8: error: 'int y' previously declared here
 int x, y, val;

        ^
nave.cpp:71:11: error: redefinition of 'int val'
 int x, y, val;

           ^
nave.cpp:9:11: error: 'int val' previously declared here
 int x, y, val;

           ^
nave.cpp:72:21: error: redefinition of 'int planeta [101][101]'
 int planeta[101][101];

                     ^
nave.cpp:10:5: error: 'int planeta [101][101]' previously declared here
 int planeta[101][101];

     ^
nave.cpp: In function 'int main()':
nave.cpp:74:5: error: redefinition of 'int main()'
 int main()

     ^
nave.cpp:13:5: error: 'int main()' previously defined here
 int main()

     ^
nave.cpp:76:5: error: reference to 'cin' is ambiguous
     cin>>n>>m>>b;

     ^
nave.cpp:5:10: note: candidates are: std::ifstream cin
 ifstream cin("nave.in");

          ^
In file included from nave.cpp:63:0:
/usr/include/c++/4.8/iostream:60:18: note:                 std::istream std::cin
   extern istream cin;  /// Linked to standard input
                  ^
nave.cpp:80:9: error: reference to 'cin' is ambiguous
         cin>>x>>y>>val;

         ^
nave.cpp:5:10: note: candidates are: std::ifstream cin
 ifstream cin("nave.in");

          ^
In file included from nave.cpp:63:0:
/usr/include/c++/4.8/iostream:60:18: note:                 std::istream std::cin
   extern istream cin;  /// Linked to standard input
                  ^
nave.cpp:121:5: error: reference to 'cout' is ambiguous
     cout<<maxi<<" "<<linmax<<" "<<colmax;

     ^
nave.cpp:6:10: note: candidates are: std::ofstream cout
 ofstream cout ("nave.out");

          ^
In file included from nave.cpp:63:0:
/usr/include/c++/4.8/iostream:61:18: note:                 std::ostream std::cout
   extern ostream cout;  /// Linked to standard output
                  ^

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