Cod sursa(job #1378029)
| Utilizator | Data | 6 martie 2015 10:11:06 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 30 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.61 kb |
#include<iostream>
#include<fstream>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int main()
{
long long int i,s,a[90000],n,smax,init,fina,ok;
fin>>n;
for(i=1;i<=n;i++)
fin>>a[i];
s=a[1];
if(s<0)
s=0;
smax=s;
ok=0;
for(i=2;i<=n;i++)
{
s=s+a[i];
if(s>smax)
{
fina=i;
smax=s;
}
if(s<0)
{
init=i+1;
s=0; }
}
fout<<smax<<" "<<init<<" "<<fina;
fin.close();
fout.close();
return 0;
}
