Atenţie! Aceasta este o versiune veche a paginii, scrisă la 2017-01-26 14:12:07.
Revizia anterioară   Revizia următoare  

 

Fişierul intrare/ieşire:evaluare1.in, evaluare1.outSursăPreOJI 2017
AutorMarius NicoliAdăugată demariusn01Marius Nicoli mariusn01
Timp execuţie pe test0.05 secLimită de memorie20480 kbytes
Scorul tăuN/ADificultateN/A

Vezi solutiile trimise | Statistici

Evaluare1

Să se evalueze o expresie aritmetică. Aceasta poate conţine: operanzi numere naturale, operatorii: + (operator binar, adunare), / (operator binar, câtul împărţirii), ^@ (operator binar, ridicare la putere), ! (operator unar, oglindeşte valoarea operandului, ex: !560 dă 65). Oricare doi operatori au priorităţi diferite (crescătoare, în ordinea dată mai sus, aşadar + are prioritatea cea mai mică). Operatorii + şi / se aplică de la stânga la dreapta. Operatorul @^ se aplică de la dreapta la stânga. Operatorul
Imaginile trebuie neaparat sa fie atasamente ale unei pagini.
!10 + 3@@2@@3)/2 are valoarea 3286 ( 5 + (1+3@^@8)/2 = 5+6562/2 = 5+3281 = 3286 ).

Date de intrare

Fişierul evaluare1.in contine pe primul rând expresia de evaluat.

Date de ieşire

Fişierul evaluare1.out conţine pe primul rând valoarea expresiei evaluate.

Restricţii

  • şirul dat are maxim 100 de caractere
  • numerele care apar iniţial în expresie sunt naturale de maxim 3 cifre
  • valoarea de afişat se încadrează pe long long
  • pentru 10% din punctaj nu apar paranteze şi este prezent doar operatorul +
  • pentru alte 10% din punctaj nu apar paranteze şi sunt prezenţi doar operatorii + şi /
  • pentru alte 40% din punctaj apar doar operatorii + şi / şi pot apărea şi paranteze
  • pentru alte 10% din punctaj apar paranteze şi operatorii +, / şi !
  • pentru alte 10% din punctaj apar paranteze şi operatorii +, / şi @^@
  • expresia dată este corectă şi nu conţine alte caractere

Exemplu

evaluare1.inevaluare1.out
5+(!!10+323)/2
3286
Trebuie sa te autentifici pentru a trimite solutii. Click aici

Cum se trimit solutii?