Cod sursa(job #1149228)

Utilizator AndreeaDDan Andreea AndreeaD Data 21 martie 2014 15:42:04
Problema Subsecventa de suma maxima Scor 5
Compilator cpp Status done
Runda Arhiva educationala Marime 0.56 kb
#include<limits.h>
#include<fstream>
using namespace std;
ifstream in("ssm.in");
ofstream out("ssm.out");
int s[6000001],n;
int main(){
    int i,sc,smax=INT_MIN,x,start,end,smin=0,pmin=0;
    in>>n;
    for(i=1;i<=n;i++){
        in>>x;
        s[i]=s[i-1]+x;
    }
    for(i=1;i<=n;i++){
            sc=s[i]-s[i-1];
            if(sc>smax){
                smax=sc;
                start=pmin+1;
                end=i;
            }
			if(s[i]<smin){smin=s[i];
			pmin=i;
			}
        }
        out<<smax<<" "<<start<<" "<<end;
        return 0;
}