Cod sursa(job #1042431)

Utilizator jul123Iulia Duta jul123 Data 27 noiembrie 2013 00:10:34
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.68 kb
#include<iostream>
#include<cstdio>
#define MIN -1000000
using namespace std;

int main()
{
    FILE *fin, *fout;
    fin=fopen("ssm.in", "r");
    fout=fopen("ssm.out", "w");

    int s = 0 , x, i, maxi, n, start=0, startm=0, finishm=0;
    maxi = MIN;
    fscanf(fin, "%d", &n);
    for(i = 0; i < n; i++)
    {
        fscanf(fin, "%d", &x);
        s += x;
        if(s > maxi)
                   {
                    maxi = s;
                    startm=start;
                    finishm=i;
                   }
        if(s < 0)
            {s = 0;
            start=i+1;
            }
    }

    fprintf(fout, "%d %d %d", maxi, startm+1, finishm+1);

}