Cod sursa(job #1819796)
Utilizator | Data | 30 noiembrie 2016 20:36:30 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 65 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.56 kb |
#include<fstream>
#include<iostream>
using namespace std;
ifstream in("ssm.in");
ofstream out("ssm.out");
int main()
{
int n;
in>>n;
int v[n+1];
long long int s=0,smax=-1,a=1,bmax=1,amax=1;
for(int i=1;i<=n;i++)
{
in>>v[i];
if(s<0)
{
s=v[i];
a=i;
}
else
s=s+v[i];
if(s>smax)
{
smax=s;
amax=a;
bmax=i-amax+amax;
}
}
out<<smax<<" "<<amax<<" "<<bmax;
}