Cod sursa(job #672682)
Utilizator | Hreapca Aurelian auRSTAR | Data | 2 februarie 2012 21:45:13 |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.48 kb |
#include<cstdio>
#include<fstream>
using namespace std;
ifstream cin("ssm.in");
ofstream cout("ssm.out");
int bst=-2000000000,i,minim,a,sum[6000010],st,dr,n,mini;
void read(),solve();
int main()
{
read();
solve();
return 0;
}
void read()
{
cin>>n;
}
void solve()
{
for(i=1;i<=n;i++)
{
cin>>a;
sum[i]=a+sum[i-1];
if(bst<sum[i]-minim)
{
bst=sum[i]-minim;
st=mini+1;
dr=i;
}
if(minim>sum[i])
{
minim=sum[i];
mini=i;
}
}
cout<<bst<<" "<<st<<" "<<dr;
}