#1590
Î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ă:
OJI 2016, Clasa a VIII-a
| 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 | #63066208 | Utilizator | |
| Fișier | arma1.cpp | Dimensiune | 658 B |
| Data încărcării | 12 Februarie 2026, 11:50 | Scor/rezultat | Eroare de compilare |
arma1.cpp: In function 'int main()': arma1.cpp:9:5: error: 'cin' was not declared in this scope cin>>c>>n; ^ arma1.cpp:20:15: warning: suggest explicit braces to avoid ambiguous 'else' [-Wparentheses] if(e) ^ arma1.cpp:27:13: error: 'cout' was not declared in this scope cout<<cmmdc<<endl; ^ arma1.cpp:28:29: error: no matching function for call to 'pow(int&, int, int)' s=s+pow(cd,1,0/cmmdc); ^ arma1.cpp:28:29: note: candidates are: In file included from /usr/include/features.h:374:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/os_defines.h:39, from /usr/include/i386-linux-gnu/c++/4.8/bits/c++config.h:426, from /usr/include/c++/4.8/iosfwd:38, from /usr/include/c++/4.8/ios:38, from /usr/include/c++/4.8/istream:38, from /usr/include/c++/4.8/fstream:38, from arma1.cpp:1: /usr/include/i386-linux-gnu/bits/mathcalls.h:153:1: note: double pow(double, double) __MATHCALL (pow,, (_Mdouble_ __x, _Mdouble_ __y)); ^ /usr/include/i386-linux-gnu/bits/mathcalls.h:153:1: note: candidate expects 2 arguments, 3 provided In file included from arma1.cpp:2:0: /usr/include/c++/4.8/cmath:434:5: note: template<class _Tp, class _Up> constexpr typename __gnu_cxx::__promote_2<_Tp, _Up>::__type std::pow(_Tp, _Up) pow(_Tp __x, _Up __y) ^ /usr/include/c++/4.8/cmath:434:5: note: template argument deduction/substitution failed: arma1.cpp:28:29: note: candidate expects 2 arguments, 3 provided s=s+pow(cd,1,0/cmmdc); ^ In file included from arma1.cpp:2:0: /usr/include/c++/4.8/cmath:411:3: note: constexpr long double std::pow(long double, long double) pow(long double __x, long double __y) ^ /usr/include/c++/4.8/cmath:411:3: note: candidate expects 2 arguments, 3 provided /usr/include/c++/4.8/cmath:407:3: note: constexpr float std::pow(float, float) pow(float __x, float __y) ^ /usr/include/c++/4.8/cmath:407:3: note: candidate expects 2 arguments, 3 provided arma1.cpp:30:11: warning: suggest parentheses around assignment used as truth value [-Wparentheses] if(c=1) ^ arma1.cpp:31:9: error: 'cout' was not declared in this scope cout<<s; ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Arma1 face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:
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ă.