Rezolvare PBinfo #2185

Decorative Icon Problema: expresie9 / 2185

Decorative IconAutor: Darius

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.). 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ța

Scrieţi un program care determină pentru un şir de n expresii, formate din litere mici şi operatorii: +, <, >, două cerinţe:
-cerinţa 1: să determine numărul cel mai mare, obținut dintr-un șir de litere, din expresiile date;
-cerinţa 2: să evalueze fiecare expresie și să afișeze valoarea ei.

Date de intrare

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

Date de ieșire

Fișierul de ieșire expresie9.out va conține, pentru cerința 1 numărul cel mai mare, obținut dintr-un șir de litere, din toate expresiile date în fișierul de intrare. Pentru cerința 2, pe fiecare dintre primele n linii ca fi valoarea fiecărei expresii, în ordinea dată în fișierul de intrare.

Restricții și precizări
  • 0 < n ≤ 100
  • Fiecare expresie conţine cel mult 80 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 60 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 0 sau 1
  • Expresiile date sunt corecte
Exemplul 1:

expresie9.in

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

expresie9.out

4234

Explicație

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

Exemplul 2:

expresie9.in

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

expresie9.out

0
2548
1

Explicație

Cerința este 2: expresiile sunt:
a + b < c echivalentă cu 1 + 2 < 3, (a = 1, b = 2, c = 3), 3 < 3 este fals, deci expresia are valoarea 0
abc + xy , echivalentă cu 123 + 2425 are valoarea 2548 (abc = 123, x = 24, y = 25)
abc > ab + d, echivalentă cu 123 > 12 + 4, are valoarea 1

Andrei Frîntu
Andrei Frîntu

Fondatorul platformei - mentor Academia

LinkedIn Instagram GitHub
© Copyright 2024 - CodulLuiAndrei.ro - Toate drepturile sunt rezervate