Cod sursa(job #1234181)

Utilizator PregatireDanielStefanescu Vlad PregatireDaniel Data 26 septembrie 2014 21:16:06
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.51 kb
#include<cstdio>
#include<climits>
using namespace std;
int main(){
    FILE *in=fopen("ssm.in","r"),*out=fopen("ssm.out","w");
    int m=INT_MIN,s=0,n,a,i1,i2,j;
    fscanf(in,"%d",&n);
    for(int i=0;i<n;i++){
        fscanf(in,"%d",&a);
        s+=a;
        if(m<s){
            m=s;
            i2=i;
            i1=j;
        }
        if(s<=0){
            s=0;
            if(a!=0){
                j=i+1;
            }
        }
    }
    fprintf(out,"%d %d %d",m,i1+1,i2+1);
    return 0;
}