Cod sursa(job #1796203)

Utilizator Ruxandra985Nanu Ruxandra Laura Ruxandra985 Data 3 noiembrie 2016 10:54:07
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.71 kb
#include <cstdio>

using namespace std;
int v[6000001][2];
int main()
{
    FILE *fin=fopen ("ssm.in","r");
    FILE *fout=fopen ("ssm.out","w");
    int i,x,n,incmax,sfmax,maxi;
    fscanf (fin,"%d%d",&n,&x);
    incmax=1;
    maxi=x;
    sfmax=1;
    v[1][0]=x;
    v[1][1]=1;
    for (i=2;i<=n;i++){
        fscanf (fin,"%d",&x);
        if (v[i-1][0]+x<x){
            v[i][0]=x;
            v[i][1]=i;
        }
        else {
            v[i][0]=x+v[i-1][0];
            v[i][1]=v[i-1][1];
        }
        if (maxi<v[i][0]){
            maxi=v[i][0];
            sfmax=i;
            incmax=v[i][1];
        }
    }
    fprintf (fout,"%d %d %d",maxi,incmax,sfmax);
    return 0;
}