Cod sursa(job #1075791)

Utilizator MesesanPaulMesesanPaul MesesanPaul Data 9 ianuarie 2014 16:18:03
Problema Subsecventa de suma maxima Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream f("ssm.in");
ofstream g("ssm.out");

int v[10005];

void citire(int n){
    for(int i=1;i<=n;++i){
        f >>v[i];
    }
}

int main()
{
    int n;
    f >>n;
    citire(n);
    int minim=0,rez=-100000,in,sf;
    for(int i=1;i<=n;++i){
        v[i]+=v[i-1];
        if(v[minim]>v[i-1]){
            minim=i-1;
        }
        if(v[i]-v[minim]>rez){
            rez=v[i]-v[minim];
            in=minim+1;
            sf=i;
        }
    }
    g <<rez<<" "<<in<<" "<<sf;
    return 0;
}