Suma Màxima. X84887


Statement
 

pdf   zip   main.R

html

Un subvector d’un vector V és un tros del vector que va d’una posició i a una posició j (on ij) 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.

Public test cases
  • Input

    7
    1 -3 2 -1 7 -4 8
    

    Output

    3 7 
    
  • Input

    6
    1 -3 2 -1 7 -4
    

    Output

    3 5 
    
  • Information
    Author
    Jaume Baixeries
    Language
    Catalan
    Official solutions
    R
    User solutions
    R