Cod sursa(job #2883184)

Utilizator AndreiPaval03Andrei Paval AndreiPaval03 Data 1 aprilie 2022 11:44:15
Problema Subsecventa de suma maxima Scor 95
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.68 kb
#include <bits/stdc++.h>

using namespace std;

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

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

    int smax = 1 << 31;
    int pmax = 0, qmax = 0;
    
    int best = 1 << 31;
    int p = 0, q = 0;

    for (int i = 1; i <= n; ++i) {
        fin >> x;

        if (best + x > x) {
            best += x;
            q = i;
        } else {
            best = x;
            p = i;
            q = i;
        }

        if (best > smax) {
            smax = best;
            pmax = p;
            qmax = q;
        }
    }

    fout << smax << " " << pmax << " " << qmax << endl;
    
    return 0;
}