Sigui V un vector de mida N que
conté enters (tant positius com negatius).
Una partició de V és una posició i del vector
(on i ∈ 1:length(V)),
tal que que divideix el vector V en dues parts: V[1:i]
i V[(i+1):length(V)].
Es tracta de trobar la i tal que
sum(V[1:i]) - sum(V[(i+1):length(V)])
sigui mínima (en valor absolut).
Aquesta i és la partició equilibrada.
Fes la funció particio_equilibrada(V) tal que,
donat un vector V, en torni la partició equilibrada.
Si n’hi haguessin més d’una, torneu la de més a l’esquerra.
El valor 0 per a una partició equilibrada és correcte,
ja que vol dir que una partició del vector és buida
(i la seva suma és zero).
Per exemple, si la funció rep el vector V = [4 , 1 , 2 , 3], torna 2, ja que (4 + 1) − (2 + 3) = 0, mentre que si rep el vector V = [2 , 1 , 3 , 4], torna un 3, que és la partició equilibrada, ja que (2+1+3) − (4) = 2 és la diferència mínima entre la part esquerra i la dreta.
Tingueu en compte que, si calculeu la suma total del vector al principi
de la funció, podreu resoldre aquest problema amb una sola
passada sobre el vector V.
Observació
Només cal que enviïs el fitxer amb la funció (i les funcions auxiliars que hagis fet)
que et demanem i prou.
El fitxer main.R et pot servir per a fer la teva solució, però no cal que n’enviïs
el contingut.
Entrada
Un vector V d’enters, amb, almenys, un element.
Sortida
La partició equilibrada del vector V.
Si n’hi haguessin més d’una, torneu la de més a l’esquerra.
Input
4 4 1 2 3
Output
2
Input
4 2 1 3 4
Output
3