.campion
conectare | înregistrare | căutare
Pagina principală » Probleme » expresie1

ultima problemă
grupă: mică
sursă: OMI 2016
ultimul articol
autor: Prof. Radu Vişinescu
ultimul software
autor: Prof. Emanuela Cerchez
expresie1


Timp maxim de execuţie / test:
0.1s
Memorie totala disponibilă / stivă:
20MB / 18MB

Prin convenţie numim expresie aritmetică ponderată o expresie construită astfel:
- expresia conţine numere întregi de cel mult 2 cifre despărţite prin virgulă;
- numim k-şir o enumerare de k numere despărţite prin virgulă (k≥1);
- o expresie poate conţine unul sau mai multe k-şiruri;
- expresia foloseşte paranteze rotunde şi paranteze drepte.

Evaluarea expresiei se face după următoarele reguli:
- dacă expresia conţine un singur k-şir atunci rezultatul expresiei este reprezentat de suma celor k numere;
Exemplu: 2,4,1 = 2+4+1 = 7.
- dacă în expresie întâlnim un k-şir delimitat de paranteze rotunde rezultatul evaluării acestui k-şir va fi reprezentat de suma maximă a unui secvenţe ce aparţine k-şirului, unde prin secvenţă se înţelege o succesiune de numere aflate pe poziţii consecutive în şir;
Exemplu: (-2,4,-1,3,-2,-3,2) => secvenţa de sumă maximă este 4,-1,3 a cărui sumă este egală cu 6.
- dacă în expresie întâlnim un k-şir delimitat de paranteze pătrate, elementele k-şirului fiind numerotate 1,2,..,k, rezultatul evaluării acestui k-şir va fi reprezentat de valoarea elementului aflat pe poziţia [(k+1)/2] dacă şirul ar fi ordonat crescător (mediana unui şir);
Exemplu: [-2,9,10,3,5] => şirul ordonat [-2,3,5,9,10] => iar valoarea expresiei este egală cu 5.
- evaluarea parantezelor se face dinspre interior spre exterior.

Cerinţă

Fiind dată o expresie aritmetică ponderată să se determine câte numere întregi conţine expresia aritmetică, precum şi care este valoarea expresiei aritmetice.

Date de intrare

Fişierul de intrare expresie1.in conţine pe prima linie un şir de caractere ce reprezintă o expresie aritmetică ponderată.

Date de ieşire

Fişierul de ieşire expresie1.out va conţine pe prima linie numărul de numere întregi din expresie, iar pe următoarea linie va fi scris un număr ce reprezintă valoarea expresiei aritmetice.

Restricţii

• Expresia se consideră corectă
• 3 ≤ lungimea unei expresii ≤ 100000
• Şirul prin care se codifică expresia poate să conţină doar următoarele caractere: cifre, paranteze rotunde şi pătrate deschise şi închise, caracterul virgulă, caracterul minus
• 10% dintre teste nu vor conţine paranteze
• 20% dintre teste nu vor conţine paranteze imbricate

Exemple

expresie1.inexpresie1.outExplicaţii
2,(2,-4,1,-1,5) 6 7 Expresia conţine 6 numere întregi
Valoarea expresiei este: 2+5 = 7
(3,-1,4),[2,3,1,8] 7 8 6+2
(2,-1,[1,2,3,4,5],-4,1) 9 4 (2,-1,3,-4,1) = 4

autor: Prof. Eugen Nodea
propunător: Prof. Emanuela Cerchez
Colegiul Naţional ″Emil Racoviţă″
emanuela.cerchez@gmail.com
Articole recomandate
Probleme recomandate
surse trimise | ajutor