expresie

Time limit: 0.03s Memory limit: 16MB Input: expresie.in Output: expresie.outPoints by default: 10p

Camelia este pasionată de operaţii aritmetice. Într-o zi, s-a gândit să evalueze valoarea unei expresii ce este formată din litere mici şi operatorii :+, <, >. În expresie, fiecare literă va fi înlocuită cu numărul de ordine pe care îl are în alfabet (a=1,b=2 etc.)(a=1, b=2 \text{ etc.}). Prietena ei, Mădălina i-a pregătit Cameliei mai multe expresii de acest tip, pe care să le evalueze şi apoi să determine care este numărul cel mai mare, obţinut dintr-un şir de litere, din expresiile date.

Cerinţă

Scrieţi un program care determină pentru un şir de nn expresii, formate din litere mici şi operatorii : +, <, >, două cerinţe:

  • cerinţa 11: să determine numărul cel mai mare, obţinut dintr-un şir de litere, din expresiile date;
  • cerinţa 22: să evalueze fiecare expresie și să afișeze valoarea ei.

Date de intrare

Fişierul de intrare expresie.in conţine pe prima linie două numere naturale tt şi nn, care reprezintă cerinţa (dacă t=1t=1 se va rezolva cerinţa 11, dacă t=2t=2 se va rezolva cerinţa 22) şi respectiv, numărul de expresii date. Pe fiecare dintre următoarele nn linii se află o expresie, formată din litere mici şi operatorii : +, <, >.

Date de ieşire

Fişierul de ieşire expresie.out va conţine, pentru cerinţa 11, numărul cel mai mare, obţinut dintr-un şir de litere, din toate expresiile date în fişierul de intrare. Fişierul de ieşire expresie.out va conţine pe prima linie, pentru cerinţa 22, pe fiecare dintre primele nn linii, valoarea fiecărei expresii, în ordinea dată în fişierul de intrare.

Restricţii şi precizări

  • 0<n1000 < n \leq 100
  • Fiecare expresie conţine cel mult 8080 de caractere ce pot fi litere mici ale alfabetului englez, unul sau mai mulţi operatori : +, <, >
  • Fiecare expresie conţine cel puţin un operator
  • Fiecare şir de litere din expresiile date conţine cel mult 6060 de litere mici ale alfabetului englez
  • O expresie va conţine cel mult un operator de tipul: <, >
  • O expresie ce conţine un operator de tipul: <, > va avea valoarea 00 sau 11
  • Expresiile date sunt corecte

Exemplul 1

expresie.in

1 2
abcd+cde
a+cd+dbcd>abc

expresie.out

4234

Explicație

Cerința este 11
Numerele din expresiile date sunt în ordine: 1234,345,1,34,4234,1231234, 345, 1, 34, 4234, 123.

Exemplul 2

expresie.in

2 3
a+b<c
abc+xy
abc>ab+d

expresie.out

0
2548
1

Explicație

Cerința este 22: expresiile sunt

  • a+b<c echivalentă cu 1+2<31+2<3 , (a=1,b=2,c=3a=1, b=2, c=3), 3<33<3 este fals, deci expresia are valoarea 00
  • abc+xyabc+xy, echivalentă cu 123+2425123+2425 are valoarea 25482548 (abc=123,x=24,y=25abc=123, x=24, y=25)
  • abc>ab+dabc>ab+d, echivalentă cu 123>12+4123>12+4, are valoarea 11

Log in or sign up to be able to send submissions!