Plusminus

View as PDF

Submit solution

Points: 1
Time limit: 2.0s
Memory limit: 64M

Author:
Problem type

Dat je niz znakova (s1, ..., sn) dužine n. Znak si je + ili -. Dat je niz od n + 1 brojeva (a1, ..., an + 1).

Treba rasporediti brojeve u dati niz znakova tako da vrednost dobijenog izraz bude maksimalna. Formalno, treba naći vrednost val koja je definisana na sledeći način:

val = max{ap(1) s1 ... ap(n) sn ap(n + 1) | p je permutacija brojeva od 1 do n + 1}

Ulaz.

(Ulazni podaci se učitavaju sa standardnog ulaza.) U prvom redu standardnog ulaza nalazi se prirodan broj n (1 ≤ n ≤ 100000). U drugom redu nalazi se n znakova, redom od s1 do sn. Svaki znak je karakter '+' ili '-'. Znakovi nisu odvojeni razmakom. U trećem redu se nalazi n + 1 brojeva, brojevi od a1 do an + 1, odvojenih razmakom. Svaki od tih brojeva je iz intervala [0, 1000000].

Izlaz.

(Izlazne podatke ispisati na standardan izlaz.) U prvi i jedini red standardnog izlaza ispisati traženu vrednost, odnosno vrednost val.

Primer 1.

standardni ulaz      standardni izlaz
3
+-+
1 2 3 4
        
8

Objašnjenje.

Jedno rešenje predstavlja raspored brojeva
2+3-1+4

Primer 2.

standardni ulaz      standardni izlaz
2
++
1 3 2
        
6

Objašnjenje.

Bilo koji raspored brojeva vodi ka optimalnom rešenju.

Primer 3.

standardni ulaz      standardni izlaz
4
----
3 12 1 2 0
        
6

Objašnjenje.

Bilo koji raspored takav da je na prvom mestu broj 12 vodi ka optimalnom rešenju.


Comments

There are no comments at the moment.