Cod sursa(job #1773113)
Utilizator | Data | 7 octombrie 2016 16:01:18 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 85 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.49 kb |
#include<cstdio>
using namespace std;
FILE*in=fopen("ssm.in","r");
FILE*out=fopen("ssm.out","w");
int N,v[6000005],i,s=0,k=0,l=0,memol=0,maxs=0;
int main()
{
fscanf(in,"%d",&N);
for(i=0;i<N;i++)
{
fscanf(in,"%d",&v[i]);
s=s+v[i];
if(s<0)
{
s=0;
k=i+1;
}
if(maxs<s)
{
maxs=s;
memol=l;
}
l++;
}
fprintf(out,"%d %d %d",maxs,k+1,memol+1);
}