Cod sursa(job #1141366)

Utilizator andreeadeacAndreea Ioana Deac andreeadeac Data 12 martie 2014 20:28:23
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include <fstream>
using namespace std;

ifstream f("ssm.in");
ofstream g("ssm.out");

int n;
/*
sc = suma max a unei subsecvente care se termina pe poz curenta i

for(...)
{
	if (sc < 0) sc = 0;
	sc += v[i];
	if (sc > smax) smax = sc;
}
*/
int main()
{
    int i, smax=-1<<9,beg, end, sc=0,x,ind;
    f>>n;
    for(i=1;i<=n;i++){
        f>>x;
        if(sc<0){
            sc=0;
            ind=i;
        }
        sc+=x;
        if(sc>smax){
            smax=sc;
            beg=ind;
            end=i;
        }
    }
    g<<smax<<" "<<beg<<" "<<end<<"\n";
    return 0;
}