Cod sursa(job #2613054)

Utilizator bem.andreiIceman bem.andrei Data 9 mai 2020 14:32:08
Problema Subsecventa de suma maxima Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.64 kb
#include <bits/stdc++.h>

using namespace std;
ifstream r("ssm.in");
ofstream w("ssm.out");
struct secv{
    int val, ind;
}d[6000001];
int main()
{
    int n;
    r>>n;
    secv maxim;
    maxim.val=-1000000000;
    for(int i=1;i<=n;i++){
        int x;
        r>>x;
        if(x>d[i-1].val+x){
            d[i].val=x;
            d[i].ind=i;
        }
        else{
            d[i].val=d[i-1].val+x;
            d[i].ind=d[i-1].ind;
        }
        if(d[i].val>maxim.val){
            maxim.val=d[i].val;
            maxim.ind=i;
        }
    }
    w<<maxim.val<<" "<<d[maxim.ind].ind<<" "<<maxim.ind;
    return 0;
}