Detalii evaluare #54913916

Rezumat problemă

#2437 Turnuri

Cel mai nou proiect imobiliar din capitală este compus din N blocuri-turn, construite unul lângă altul, de-a lungul unui bulevard central și numerotate de la 1 la N. Pentru fiecare turn se cunoaște numărul etajelor din care este compus acesta și se mai știe că nu există două turnuri cu același număr de etaje. Ultimele norme urbanistice definesc coeficientul de frumusețe al turnului cu numărul T ca fiind numărul turnurilor din secvența de turnuri care începe cu turnul S, se termină cu turnul D și are următoarele proprietăți:

  • 1 ≤ S ≤ T ≤ D ≤ N
  • numărul etajelor fiecărui turn din secvență, cu excepţia turnului T, este mai mic decât numărul de etaje ale turnului T;
  • Dacă S ≠ 1 atunci turnul S-1 este cel mai apropiat turn din stânga turnului T, care are un număr de etaje strict mai mare decât turnul T;
  • Dacă D ≠ N atunci turnul D+1 este cel mai apropiat turn din dreapta turnului T, care are un număr de etaje strict mai mare decât turnul T;

Coeficientul de frumusețe al întregului ansamblu de turnuri este suma coeficienților de frumusețe avuţi de turnurile componente. Dezvoltatorul proiectului dorește să renunțe la unul dintre turnuri și să construiască în locul acestuia un restaurant subteran, acesta considerându-se un turn cu zero etaje. Dezvoltatorul dorește să calculeze coeficientul de frumusețe al ansamblului de turnuri, pentru fiecare posibilă amplasare a restaurantului.

Cunoscând numărul N de turnuri și numărul etajelor fiecăruia, determinați coeficientul de frumusețe al ansamblului de turnuri pentru toate cele N posibilități de amplasare ale restaurantului, pe pozițiile 1, 2,…, N.

Detalii

Problema Turnuri Operații I/O turnuri.in/turnuri.out
Limita timp 1.2 secunde Limita memorie Total: 64 MB / Stivă 32 MB
Id soluție #54913916 Utilizator Chiriac Ioana (ioana_chiriac9)
Fișier turnuri.cpp Dimensiune 839 B
Data încărcării 12 Decembrie 2024, 08:47 Scor / rezultat Eroare de compilare

Evaluare


Mesaj compilare

turnuri.cpp: In function 'void citire()':
turnuri.cpp:21:1: error: reference to 'cin' is ambiguous
 cin>>n;

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

          ^
In file included from turnuri.cpp:1:0:
/usr/include/c++/4.8/iostream:60:18: note:                 std::istream std::cin
   extern istream cin;  /// Linked to standard input
                  ^
turnuri.cpp:23:5: error: reference to 'cin' is ambiguous
     cin>>a[i];

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

          ^
In file included from turnuri.cpp:1:0:
/usr/include/c++/4.8/iostream:60:18: note:                 std::istream std::cin
   extern istream cin;  /// Linked to standard input
                  ^
turnuri.cpp: In function 'void stanga()':
turnuri.cpp:28:17: error: 'i' was not declared in this scope
 for(int j=1; j<=i; j++) {

                 ^
turnuri.cpp:34:10: error: no match for 'operator[]' (operand types are 'std::queue<int>' and 'int')
         q[i].push(st.top()); //adaug indicii scosi, in ordinea aparitiei lor

          ^
turnuri.cpp:39:1: error: expected primary-expression before '}' token
 }

 ^
turnuri.cpp:39:1: 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 Turnuri 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ă.