Cod sursa(job #1827517)
| Utilizator | Data | 11 decembrie 2016 21:42:51 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.51 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("ssm.in");
ofstream g("ssm.out");
int main()
{int n,x,sb,in,sf,i,m,p=-1,q=-1;
f>>n>>sb;
in=sf=1;
m=sb;
for(i=2;i<=n;i++)
{
f>>x;
if(x>sb+x)
{
sb=x;
in=sf=i;
}
else {sf++; sb+=x;}
if(sb>m)
{
m=sb;
p=in;
q=sf;
}
else
if(sb==m)
if(p==in)
if(sf<q)
q=sf;
}
g<<m<<' '<<p<<' '<<q;
return 0;
}
