Cod sursa(job #2033441)
Utilizator | Data | 6 octombrie 2017 20:03:07 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 85 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.47 kb |
#include<fstream>
#include<algorithm>
#include<cstring>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int n,i,d=1,x,ma,dr,st;
int ssm[6000005];
int main()
{
fin>>n;
st=1;
for(i=1;i<=n;i++)
{
fin>>x;
if(x>ssm[i-1]+x&&i>1)
st=i;
ssm[i]=max(x,x+ssm[i-1]);
if(ssm[i]>ma)
{
ma=ssm[i];
dr=i;
}
}
fout<<ma<<' '<<st<<' '<<dr;
}