#4653
expresie11
Se consideră un număr natural format din n
cifre. Inserând între cifrele numărului dat p
operatori +
şi q
operatori -
se obţine o expresie aritmetică. Un operator poate fi inserat doar între două cifre, deci înaintea primei cifre a numărului nu se poate plasa un operator.
Scrieţi un program care, pentru un număr dat, determină valoarea maximă a unei expresii aritmetice care se poate obţine inserând p
operatori +
şi q
operatori -
între cifrele numărului dat.
ONI 2024, clasa a 7-a
Problema | expresie11 | Operații I/O |
![]() expresie.in /expresie.out
|
---|---|---|---|
Limita timp | 0.2 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
Id soluție | #57967337 | Utilizator | |
Fișier | expresie11.cpp | Dimensiune | 2.08 KB |
Data încărcării | 05 Mai 2025, 20:45 | Scor / rezultat | 0 puncte |
expresie11.cpp: In function 'long long int evaluate_expression(const string&, const std::vector<int>&)': expresie11.cpp:13:34: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (int i = 0; i < ops.size(); ++i) { ^ expresie11.cpp:25:38: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (int i = 1; i < numbers.size(); ++i) { ^ expresie11.cpp:26:36: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] while (op_index < ops.size() && ops[op_index] == 0) { ^ expresie11.cpp:29:33: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if (op_index < ops.size()) { ^ expresie11.cpp: In function 'void generate_and_evaluate(const string&, int, int, int, std::vector<int>&, long long int&)': expresie11.cpp:42:25: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if (pos == ops.size()) { ^ expresie11.cpp:58:30: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if (p + q < ops.size() - pos) { ^
Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
---|---|---|---|---|---|---|
1 | 0 secunde | Caught fatal signal 11 | 2 | 0 | ||
2 | 0 secunde | Caught fatal signal 11 | 2 | 0 | ||
3 | 0 secunde | Caught fatal signal 11 | 2 | 0 | ||
4 | 0 secunde | Caught fatal signal 11 | 3 | 0 | ||
5 | 0 secunde | Caught fatal signal 11 | 3 | 0 | ||
6 | 0 secunde | Caught fatal signal 11 | 3 | 0 | ||
7 | 0 secunde | Caught fatal signal 11 | 2 | 0 | ||
8 | 0 secunde | Caught fatal signal 11 | 2 | 0 | ||
9 | 0 secunde | Caught fatal signal 11 | 2 | 0 | ||
10 | 0 secunde | Caught fatal signal 11 | 2 | 0 | ||
11 | 0 secunde | Caught fatal signal 11 | 2 | 0 | ||
12 | 0 secunde | Caught fatal signal 11 | 2 | 0 | ||
13 | 0 secunde | Caught fatal signal 11 | 2 | 0 | ||
14 | 0 secunde | Caught fatal signal 11 | 2 | 0 | ||
15 | 0 secunde | Caught fatal signal 11 | 3 | 0 | ||
16 | 0 secunde | Caught fatal signal 11 | 3 | 0 | ||
17 | 0 secunde | Caught fatal signal 11 | 3 | 0 | ||
18 | 0 secunde | Caught fatal signal 11 | 6 | 0 | ||
19 | 0 secunde | Caught fatal signal 11 | 6 | 0 | ||
20 | 0 secunde | Caught fatal signal 11 | 6 | 0 | ||
21 | 0 secunde | Caught fatal signal 11 | 7 | 0 | ||
22 | 0 secunde | Caught fatal signal 11 | 7 | 0 | ||
23 | 0 secunde | Caught fatal signal 11 | 7 | 0 | ||
24 | 0 secunde | Caught fatal signal 11 | 7 | 0 | ||
25 | 0 secunde | Caught fatal signal 11 | 7 | 0 | ||
26 | 0 secunde | Caught fatal signal 11 | 7 | 0 | ||
Punctaj total | 0 |
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema expresie11 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ă.