Max Sum of Subsequence


Submit solution


Points:100 (partial)
Time limit:0.5s
Memory limit:32M
Author:

Tags
Arrays
Difficulty
Easy

Write a program that finds the maximal sum of consecutive elements in a given array of N numbers.

  • _Can you do it with only one loop (with single scan through the elements of the array)?_

Input

  • On the first line you will receive the number N
  • On the next N lines the numbers of the array will be given

Output

  • Print the maximal sum of consecutive numbers

Constraints

  • 1 <= N <= 1024

Sample tests

Input Output
10
2
3
-6
-1
2
-1
6
4

-8
8
11

Comments


  • 1
    assendk
     commented on July 22, 2018

    Моля някой да обясни как 2, -1, 6, 4 са последователни елементи?


    • 0
      monika9158
       commented on Dec. 5, 2018

      Наистина е tricky... но понеже никъде не се казва Increasing Sequence / Decreasing Sequence / Sequence of Equals -т.е. не е специфирано каква е последователността на елементите (нарастваща, намаляваща или са еднакви един след друг) - просто имаме каквито и да са последователни елементи, т.е. позициите им се движат i, i+1, i +2....

      Също така, винаги можеш да си погледнеш Sample Input за разяснение - там ясно се вижда какво се има предвид :)


  • 2
    mihaeladimitrova60
     commented on April 23, 2018

    Здравейте,

    Аз също имам нужда от разяснение на условието - как разбираме кои елементи са последователни ? Благодаря предварително !


    • 0
      markov.r
       commented on April 24, 2018 edit 4

      Последователни са елементите които са един след друг в масива :)

      Иначе условието може да се перефразира и така - кой подмасив от дадения масив има максимална сума. Пример за подмасиви:

      2

      2 3

      2 3 -6 ..

      3 -6 -1

      и т.н.


  • 0
    radoslav_stamenov
     commented on March 24, 2018

    Защо от сорс кода на Java получавам 15? (Тук не мога да си публикувам кода!)


  • 0
    adriyanmihaylov
     commented on March 6, 2018 edit 2

    Може ли за малко помощ,защото изобщо не мога да схвана къде ми е грешката: Аз разбирам по следния начин условието: Вход 10 2 3 -6 -1 2 -1 6 4 -8 8 => редиците са (2<3>-6<-1) (2>-1<6>4) (-8<8) => най-голямата сума = 11 Тоест, редицата започва независимо дали първото число в нея е по-голямо или по-малко от следващото, идеята е да се редуват, докато няма два еднакви последователни знака.

    UPDATE Сега стигнах до извода, че задачата няма нищо общо с първоначалните ми разбирания - няма никакви сравнения между съседните елементи.


    • 0
      ygabygabg
       commented on March 6, 2018

      Здравей, няма определен брой елементи за да се получи максималната сума :) Тоест може да са всички елементи ако са положителни :) моето решение е с 2 цикала (за проверката на максималната сума)


  • -3
    fbinnzhivko
     commented on March 4, 2018

    Защо в условието има долни черти? _Can you do it with only one loop (with single scan through the elements of the array)?_


  • 0
    iordanbalt
     commented on Feb. 27, 2018

    Какво значи consecutive elements ?


    • -1
      ygabygabg
       commented on Feb. 27, 2018

      Има гоогле преводач :) иначе значи последователни елементи :) Както са показани в примера (болднатите елементи)


  • 0
    davidlubomirov
     commented on Feb. 11, 2018 edited

    -