#152
GM are un şir de N
numere naturale a
1
, a
2
,…, a
N
, cu proprietatea a
i
≤
a
i+1
≤
2*a
i
pentru orice i
, 1 ≤i < N
. El doreşte să scrie în faţa fiecărei valori din şir un semn +
sau -
astfel încât valoarea S
a expresiei obţinute să aibă proprietatea 0 ≤ S ≤
a
1
.
Scrieţi un program care să-l ajute pe GM să determine un mod de a scrie cele N
semne.
Urmasii lui Moisil, Iasi, 2013
Problema | sir | Operații I/O |
![]() sir.in /sir.out
|
---|---|---|---|
Limita timp | 0.1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
Id soluție | #58088498 | Utilizator | |
Fișier | sir.cpp | Dimensiune | 723 B |
Data încărcării | 13 Mai 2025, 15:04 | Scor / rezultat | Eroare de compilare |
sir.cpp:1:1: error: expected unqualified-id before string constant "#include<cstdio>\n#define NMAX 100005\nusing namespace std;\nint A[NMAX], Sol[NMAX], Sw[NMAX];\n\nint main() {\n freopen(\"sir.in\", \"r\", stdin);\n freopen(\"sir.out\", \"w\", stdout);\n\n int n;\n scanf(\"%d\", &n);\n for(int i = 1; i <= n; ++i)\n scanf(\"%d\", A + i);\n \n int sum = A[n];\n for(int i = n - 1; i > 0; --i)\n if(sum >= A[i]) {\n Sol[i] = 1;\n sum -= A[i];\n } else {\n Sw[i] = 1;\n sum = A[i] - sum;\n }\n \n int sw = 0;\n for(int i = 1; i <= n; ++i) {\n if(Sol[i] ^ sw)\n printf(\"-\");\n else\n printf(\"+\");\n sw ^= Sw[i];\n }\n\n return 0;\n}" ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema sir 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ă.