Cod sursa(job #332435)

Utilizator MarquiseMarquise Marquise Data 17 iulie 2009 19:29:22
Problema Subsecventa de suma maxima Scor 85
Compilator cpp Status done
Runda Arhiva educationala Marime 0.68 kb
#include <fstream.h>

#define NMAX 6000001

int n, v[NMAX], min , max, pi, pj;

int main()
{
    int i ;
    ifstream f("ssm.in");
    ofstream g("ssm.out");
    
    f >> n;
    
    for ( i = 1; i <= n; i++)
    {
        f >> v[i];
        v[i] += v[i - 1];
    }
    
    max = v[1];
    pj = 1;
    
    for ( i = 2; i <= n; i++)
    {
        if ( v[i] - min > max)
        {
             max = v[i] - min;
             pj = i;
        }
        
        if ( v[i] < min)
        {
             min = v[i];
             pi = i;
        }
    }
    g << max << " "<< pi + 1 << " " << pj << "\n";
    f.close();
    g.close();
    return 0;
}