expresie

Time limit: 0.1s Memory limit: 4MB Input: expresie.in Output: expresie.out

Costel are de rezolvat o temă grea la matematică: având la dispoziţie NN numere naturale nenule trebuie să aşeze între acestea 22 operaţii de înmulţire şi N3N-3 operaţii de adunare, astfel încât rezultatul calculelor să fie cel mai mare posibil. Nu este permisă modificarea ordinii numerelor date.

De exemplu, dacă N=5N=5 şi numerele sunt 4,7,1,5,34, 7, 1, 5, 3, operaţiile pot fi aşezate 4+71+534 + 7 \cdot 1 + 5 \cdot 3, sau 471+5+34 \cdot 7 \cdot 1 + 5 + 3, etc.

Cerinţă

Scrieţi un program care să aşeze două operaţii de înmulţire şi N3N-3 operaţii de adunare între cele NN valori date astfel încât valoarea expresiei obţinute să fie maximă.

Date de intrare

Fişierul de intrare expresie.in are următoarea structură:

Pe prima linie se află un număr natural NN, reprezentând numărul elementelor date.
Pe următoarele linii se află cele NN numere naturale date, fiecare pe câte o linie.

Date de ieşire

Fişierul de ieşire expresie.out va conţine, pe prima linie, valoarea maximă obţinută prin evaluarea expresiei.

Restricţii şi precizări

  • 4N1 0004 \leq N \leq 1\ 000
  • Numerele date sunt numere naturale între 11 şi 10 00010\ 000.

expresie.in

5
4
7
1
5
3

expresie.out

44

Explicație

Valoarea maximă se obţine prin aşezarea operaţiilor sub forma 47+1+534 \cdot 7 + 1 + 5 \cdot 3.

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