Cod sursa(job #1597239)

Utilizator dragos231456Neghina Dragos dragos231456 Data 11 februarie 2016 20:20:44
Problema Subsecventa de suma maxima Scor 95
Compilator cpp Status done
Runda Arhiva educationala Marime 0.68 kb
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;

#define FOR(i, a, b)  for (int i = (a); i <= (b); ++ i)
#define Max(a, b)  ((a) > (b) ? (a) : (b))

int main(void)
{
    int n,s=0,mx=-2000000000,a,lt,rt,id,i;
    ifstream f("ssm.in");
    ofstream g("ssm.out");
    f>>n;
    FOR(i,1,n)
    {
        f>>a;
        if(s<0)
        {
            s=a;
            id=i;
        }
        else
        {
            s+=a;
            if(s>mx)
            {
                mx=s;
                lt=id;
                rt=i;
            }
        }
    }
    g<<mx<<" "<<lt<<" "<<rt;
    f.close();
    g.close();
    return 0;
}