Escriba un programa que, mediante un conjunto de valores enteros (que contiene enteros negativos), encuentre la suma máxima de elementos sucesivos en el conjunto.Buscar la suma máxima de elementos en el conjunto
Ejemplo:
2, 3, -6, -1, 2, -1, 6, 4, -8, 8
Da
Estoy buscando una solución que sea rápida r que O (N^2).
1,2,5,6 no son sucesivos. Si no tiene ninguna restricción sobre el subconjunto que se puede tomar, este es el problema de suma de subconjuntos, que es NP-completo, pero no creo que sea el caso. – amit
Perdón por el malentendido. He cometido un error en la descripción y el ejemplo. :) He actualizado ambos. – user1106337
Un escaneo lineal puede resolver este problema. Simplemente resuma y compare con la corriente máxima, si la suma es <0, luego restaure la suma a 0 y continúe. Esta codiciosa solución ha demostrado ser correcta. Se llama algoritmo de Kadane: http://en.wikipedia.org/wiki/Maximum_subarray_problem – nhahtdh