Detalii evaluare #53412806

Rezumat problemă

Un perete dreptunghiular de lățime L și o înălțime foarte mare (teoretic infinită) trebuie să fie protejat la bază cu plăci dreptunghiulare de faianță, de dimensiuni A și respectiv B. Plăcile se monteză una lângă cealaltă, pe mai multe rânduri orizontale, de jos în sus, pe fiecare rând de la stânga la dreapta, TOATE plăcile fiind așezate ”în picioare” (cu latura de mărime A pe orizontală și cea de mărime B pe verticală) sau TOATE ”culcate” (cu latura de mărime B pe orizontală și cea de mărime A pe verticală). Pentru a nu se pierde material, dacă la capătul unui rând nu încape o placă întreagă, se taie din ea porțiunea necesară, porțiunea rămasă fiind folosită la începutul rândului următor.

Pe rândul al doilea se montează plăcile în continuare în același mod, completându-l la capăt cu o porțiune de placă, restul de placă fiind folosit pe rândul al treilea etc. până ce rândul se încheie cu o placă întreagă, nemaifiind necesară nicio completare cu o porțiune de placă. În acest moment procesul de placare se încheie.Dacă primul rând se încheie cu placă întreagă, atunci placarea se încheie cu un singur rând completat.

Cunoscând lățimea L a peretelui și dimensiunile A și B ale plăcilor de faianță, stabiliți înălțimea maximă placată care se poate obține după metoda descrisă mai sus.

Detalii

Problema Placare1 Operații I/O placare1.in/placare1.out
Limita timp 0.1 secunde Limita memorie Total: 2 MB / Stivă 2 MB
Id soluție #53412806 Utilizator Sahleanu Luca (LucaSah)
Fișier placare1.cpp Dimensiune 620 B
Data încărcării 29 Octombrie 2024, 11:06 Scor / rezultat Eroare de compilare

Evaluare


Mesaj compilare

placare1.cpp:11:14: error: variable 'std::ifstream cin' has initializer but incomplete type
  ifstream cin("placare1.in");

              ^
placare1.cpp:12:15: error: variable 'std::ofstream cout' has initializer but incomplete type
  ofstream cout("placare1.out");

               ^
placare1.cpp: In function 'int main()':
placare1.cpp:16:3: error: reference to 'cin' is ambiguous
   cin >> L >> A >> B;

   ^
placare1.cpp:11:11: note: candidates are: <typeprefixerror>cin
  ifstream cin("placare1.in");

           ^
In file included from placare1.cpp:1:0:
/usr/include/c++/4.8/iostream:60:18: note:                 std::istream std::cin
   extern istream cin;  /// Linked to standard input
                  ^
placare1.cpp:33:3: error: reference to 'cout' is ambiguous
   cout<<max(H1,H);

   ^
placare1.cpp:12:11: note: candidates are: <typeprefixerror>cout
  ofstream cout("placare1.out");

           ^
In file included from placare1.cpp:1:0:
/usr/include/c++/4.8/iostream:61:18: note:                 std::ostream std::cout
   extern ostream cout;  /// Linked to standard output
                  ^
placare1.cpp: In function 'long long int cmmdc(long long int, long long int)':
placare1.cpp:9:1: warning: control reaches end of non-void function [-Wreturn-type]
 }

 ^

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