Cod sursa(job #1486373)

Utilizator Vlad_lsc2008Lungu Vlad Vlad_lsc2008 Data 14 septembrie 2015 19:11:29
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
#include <cstdio>
#include <vector>
#define pb push_back
using namespace std;
int n;

int maxim(int a,int b)
{
    if(a>b) return a;
       else return b;
}

int main()
{
    int a,i,be,en,idx;
    long sum,bests=-1000000;
    freopen("ssm.in","r",stdin);
    freopen("ssm.out","w",stdout);
    scanf("%d",&n); i=n;
    scanf("%d",&a); sum=a; be=1;
    for(i=2;i<=n;i++)
    {
        scanf("%d",&a);
        if(sum<0) { sum=a; idx=i;}
        else sum+=a;
        if(bests<sum) { bests=sum; be=idx; en=i;}
    }

    printf("%ld %d %d\n",bests,be,en);
    fclose(stdin);
    fclose(stdout);
    return 0;
}