Verilen sayılar dizisi (negatif tamsayılar içeren) dizisine, dizideki ardışık öğelerin maksimum toplamını bulduğu bir program yazın.Dizideki öğelerin maksimum toplamını bul
Örnek:
2, 3, -6, -1, 2, -1, 6, 4, -8, 8
verir 11
Ben bir çözüm arıyorum r'den (N^2). Ben Kadane's Algorithm düşünüyorum
1,2,5,6 ardışık değildir. Alınabilecek alt küme üzerinde herhangi bir kısıtlama yoksa, bu NP-Complete olan Altküme-Sum problemidir, ancak durumun böyle olduğunu düşünmüyorum. – amit
Yanlış anlaşılma için özür dilerim. Açıklamada ve örnekte bir hata yaptım. :) İkisini de güncelledim. – user1106337
Doğrusal bir tarama bu sorunu çözebilir. Sadece toplamı toplayın ve mevcut maks. Ile karşılaştırın, eğer toplamı <0 ise, o zaman toplamı 0'a sıfırlayın ve devam edin. Bu açgözlü çözümün doğru olduğu kanıtlandı. Buna Kadane'nin algoritması deniyor: http://en.wikipedia.org/wiki/Maximum_subarray_problem – nhahtdh