Cod sursa(job #2926465)

Utilizator PatruMihaiPatru Mihai PatruMihai Data 17 octombrie 2022 20:04:23
Problema Subsecventa de suma maxima Scor 85
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.63 kb
#include <bits/stdc++.h>

using namespace std;

ifstream fin("ssm.in");
ofstream fout("ssm.out");

int main()
{
    int n;
    fin >> n;

    vector<int> v(n);
    for(int i = 0; i < n; i++)
    {
        fin >> v[i];
    }

    int minim = 1e9;
    int s = 0;
    int ans = -1e9;
    int left = 0;
    int right = 0;

    for(int i = 0; i < n; i++)
    {
        s += v[i];
        if(s < minim)
        {
            minim = s;
            left = i + 1;
        }

        if(s - minim > ans)
        {
            ans = s - minim;
            right = i + 1;
        }
    }

    fout << ans << " " << left + 1 << " " << right;

    return 0;
}