Cod sursa(job #2668989)

Utilizator tudorcioc5Cioc Tudor tudorcioc5 Data 5 noiembrie 2020 20:08:48
Problema Secventa 2 Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.95 kb
#include <fstream>
#include <climits>
using namespace std;

int main (void){
    ifstream fin ("colier.in");

    int length;
    fin>>length;

    int currentMaxSum = 0, maxSum = INT_MIN, currentMinSum = 0, minSum = INT_MAX;
    int total = 0;

    for (int i=1; i<=length; i++){
        int number;
        fin>>number;

        if (number + currentMaxSum < number)
            currentMaxSum = 0;

        if (number + currentMinSum > number)
            currentMinSum = 0;

        currentMinSum += number;
        currentMaxSum += number;

        total += number;

        if (currentMaxSum > maxSum)
            maxSum = currentMaxSum;

        if (currentMinSum < minSum)
            minSum = currentMinSum;

    }
    fin.close();

    total -= minSum;

    ofstream fout ("colier.out");
    if (total > maxSum && total != 0)
        fout<<total;
    else
        fout<<maxSum;

    fout.close();
    

    return 0;
}