Cod sursa(job #1701641)

Utilizator GeorginskyGeorge Georginsky Data 13 mai 2016 19:16:32
Problema Subsecventa de suma maxima Scor 85
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include <iostream>
#include <fstream>
#define nmax 6000001
using namespace std;
ifstream in("ssm.in");
ofstream out("ssm.out");
int s[nmax], b[nmax], mn, n, bS, mni, bSi;
void read(){
    int x, i;
    in>>n;
    for(i=1; i<=n; i++){
        in>>x;
        s[i]=x+s[i-1];
    }
}

void dp(){
    for(int i=1; i<=n; i++){
        b[i]=s[i]-mn;
        if(s[i]<mn){
            mn=s[i];
            mni=i;
        }
        if(bS<b[i]){
            bS=b[i];
            bSi=i;
        }
    }
    out<<bS<<" "<<mni+1<<" "<<bSi;
}

int main(){
    read();
    dp();
    return 0;
}