Un subvector d’un vector V
és un tros del vector que va d’una posició
i
a una posició j
(on i ≤ j) i que conté els elements
V[i], V[i+1], V[i+2], ... V[j]
.
Un subvector pot tenir una sola posició (i = j).
La suma d’un subvector és la suma de tots els elements
que conté.
Feu la funció sumamaxima(V)
tal que,
donat un vector V
que conté enters (positius i negatius),
torni les posicions (i,j) del subvector de V
amb la suma màxima.
Per exemple, si el vector és [1 , −3 , 2 , −1 , 7 , −4 , 8], la funció torna (3,7), ja que el subvector que té la suma més gran va de l’element 3 al 7 (no hi ha cap subvector tal que els seus elements sumin més que 12).
Si tenim el vector [1 , −3 , 2 , −1 , 7 , −4], tornarà (3,5), ja que la suma més gran la conté el subvector que va de la posició 3 a la posició 5.
En cas de subvectors amb la mateixa suma màxima, cal tornar-ne la primera.
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
que conté enters (positius i negatius).
Sortida
Un vector amb les posicions (i,j) del subvector de V
amb la suma màxima.
En cas de subvectors amb la mateixa suma màxima, cal tornar-ne la primera.
Input
7 1 -3 2 -1 7 -4 8
Output
3 7
Input
6 1 -3 2 -1 7 -4
Output
3 5