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

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


Timp maxim de execuţie/test:
0.2 secunde
Memorie totală disponibilă/stivă:
32 MB/16 MB

O expresie corect parantezată (prescurtat ecp) este un sir format din caracterele (,),[,],{,} si care se formează după următoarele reguli:

  • (), [],{} sunt ecp
  • dacă A este ecp, atunci (A), [A] si {A} sunt ecp
  • dacă A si B sunt ecp, atunci AB este ecp

Exemple de ecp: ({}{}[(())]), ((([]))), {({()}[])}. Exemple de siruri care nu sunt ecp: ([]], {(}). Costul unei ecp se calculează astfel:

  • () este o ecp de cost 2
  • [] este o ecp de cost 3
  • {} este o ecp de cost 5
  • dacă A este ecp de cost k, atunci (A) are costul 22*k, [A] are costul 33*k, iar {A} are costul 55*k
  • dacă A si B sunt ecp de costuri k si p, atunci expresia AB este o ecp de cost k*p.
De exemplu, costul expresiei ()[(()){}()] este 2*33*(22*(2)*5*2)=25*33*51=4320.

Cerinţă

Dându-se o ecp, să se determine costul acesteia.

Date de intrare

Fişierul de intrare ecp.in conţine pe prima linie expresia corect parantezată. Această expresie nu conţine niciun caracter spaţiu.

Date de ieşire

Fişierul de ieşire ecp.out va conţine costul x al ecp. Deoarece x poate fi un număr foarte mare, se vor afisa numai exponenţii factorilor 2, 3 si 5 din descompunerea în factori primi a lui x. Acesti exponenţi se vor afisa pe o singură linie, separaţi prin câte un spaţiu.

Restricţii

  • Expresia din fisierul de intrare este o ecp. Lungimea ei este de cel mult 1000.

Exemplu

ecp.in ecp.out Explicaţii
()[(()){}()] 5 3 1
Costul ecp este 25*33*51
ecp.in ecp.out Explicaţii
([[[]]]) 2 7 0
Costul ecp este 22*(33*(33*(3)))=22*37*50
prof. Dan Pracsiu
Liceul "Stefan Procopiu" Vaslui
dpracsiu@yahoo.com
propunător: Prof. Emanuela Cerchez
emanuela.cerchez@gmail.com
Articole recomandate
Probleme recomandate
De la XOR 2015: sprime, sir2dif, punctul, aperm, arbsum, robotzi, permtr, unudoi
De acelaşi autor: cai, rebus, harta, comun, axa, sir, ocean14, reduceri, div3, patrate6, vot, reziduu, accesibil, predecesor, permutari, scanduri, ordonare, xor1, paltrei, triunghi1, 123, traseu1, parbit, petrecere, secvbiti, subm, triunghi3, cmmdcsecv, drumuri1, fillmat, secvb, siruri3, acces, segmente, echilibru1, broscute, ksecv, paisprezece, proddiv, perechi2, expeval, maxtri, combcuv, dfs, qtri, blis, maxbin, probleme, divider, eliminare, minm, genab, grafxy, matd3, azeval, matrixdel, speed, maxp, split, binremove, sminus, subsets, tcif, sprime, sir2dif, arbsum, robotzi, permtr, unudoi, matcnt, ssdj, dominant
Despre şiruri de caractere: scp, ab, sl, nrcuv, rv, kpal, chimie, reteta, replace, grad, index, cod, text, decript, spam, complex, cifre, anagrame, balbe, criptmat, mesaj, maxim, astre, sablon, formule, ed, balls, vocale, prop, bacan, novel, bitslang, text2, ref, scor2, convert, cod2, compress, pstring, sub, rima, program1, sms, circular, randuri, cezar, bifo, joc9, pal, bare, joc12, fractie, cod3, tunel, csir, top, ratina, cifru1, limbaj, adun, ecuatii, dir, paritate, virus, sir6, mesaj2, text1, sirul, ogorul, rez, sablon1, anag, sir8, seti, secvsir, dp, cuvant, strings, antipatie, fractie1, links, ordonare, text3, concat, codif, cheie, alfabetar, cuvinte2, comp, litere, mxl, mesaj3, expresie2, grad2, antic, zuma, expeval, combcuv, lgdrum, subtitrare, compresie, zigzag, azeval, fraze, subsecvente, showroom, rebus1, agenda, opmult, betisoare, reziston, clase, vot2, smiley, charlie, cript, scadere, spioni1, sablon3, expand, culori3, virgule
Despre stiva: sl, teren, reactii, complex, auto, bile3, chimie2, vile, puncte1, masina3, matrice1, dir, stiva, munte2, perle, basm, predecesor, expresie1, telecab, expresie2, liste, intervale, jocs, expeval, copaci2, plus, azeval, unific, swap, stiva1, charlie
Chestionare recomandate
surse trimise | ajutor