Detalii evaluare #53491670

Rezumat problemă

#1590 Arma1

În anul 2214 a izbucnit primul război interstelar. Pământul a fost atacat de către n civilizaţii extraterestre, pe care le vom numerota pentru simplicitate de la 1 la n.

Pentru a se apăra, pământenii au inventat o armă specială ce poate fi încărcată cu proiectile de diferite greutăţi, fabricate dintr-un material special denumit narun. Dacă arma este programată la nivelul p, atunci un proiectil de greutate k va ajunge exact la distanţa kp km (k la puterea p) faţă de Pământ şi dacă în acel punct se află cartierul general al unui atacator, acesta va fi distrus. De exemplu, dacă arma este programată la nivelul 2, un proiectil de greutate 10 va distruge cartierul general al extratereştrilor situat la distanţa 102 = 100 km de Pământ.

Arma poate fi încărcată cu proiectile de diferite greutăţi, dar cum narunul este un material foarte rar şi foarte scump, pământenii vor să folosească proiectile cât mai uşoare pentru a distruge cartierele generale inamice.

Cunoscându-se n, numărul atacatorilor, precum şi cele n distanţe până la cartierele generale ale acestora, să se scrie un program care determină:

  • cantitatea minimă de narun necesară pentru a distruge toate cartierele generale inamice;
  • nivelurile la care trebuie programată arma, pentru a distruge fiecare cartier general inamic cu o cantitate minimă de narun.

Detalii

Problema Arma1 Operații I/O arma1.in/arma1.out
Limita timp 0.5 secunde Limita memorie Total: 4 MB / Stivă 2 MB
Id soluție #53491670 Utilizator Călin Mihai (Maestrul25)
Fișier arma1.cpp Dimensiune 1.49 KB
Data încărcării 02 Noiembrie 2024, 17:03 Scor / rezultat Eroare de compilare

Evaluare


Mesaj compilare

arma1.cpp: In function 'std::pair<int, int> find_min_k_and_p(ull)':
arma1.cpp:19:30: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for (int k = 1; k * k <= d; ++k) {

                              ^
arma1.cpp: In function 'int main()':
arma1.cpp:42:5: error: reference to 'cin' is ambiguous
     cin >> c >> n;

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

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

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

          ^
In file included from arma1.cpp:1:0:
/usr/include/c++/4.8/iostream:60:18: note:                 std::istream std::cin
   extern istream cin;  /// Linked to standard input
                  ^
arma1.cpp:52:18: error: expected unqualified-id before '[' token
             auto [min_k, _] = find_min_k_and_p(distances[i]);

                  ^
arma1.cpp:53:28: error: 'min_k' was not declared in this scope
             total_narun += min_k;

                            ^
arma1.cpp:55:9: error: reference to 'cout' is ambiguous
         cout << total_narun << endl;

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

          ^
In file included from arma1.cpp:1:0:
/usr/include/c++/4.8/iostream:61:18: note:                 std::ostream std::cout
   extern ostream cout;  /// Linked to standard output
                  ^
arma1.cpp:58:18: error: expected unqualified-id before '[' token
             auto [_, best_p] = find_min_k_and_p(distances[i]);

                  ^
arma1.cpp:59:13: error: reference to 'cout' is ambiguous
             cout << best_p << endl;

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

          ^
In file included from arma1.cpp:1:0:
/usr/include/c++/4.8/iostream:61:18: note:                 std::ostream std::cout
   extern ostream cout;  /// Linked to standard output
                  ^
arma1.cpp:59:21: error: 'best_p' was not declared in this scope
             cout << best_p << endl;

                     ^

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