Pagini recente » Cod sursa (job #1634808) | Cod sursa (job #2903284) | Cod sursa (job #1964163) | Istoria paginii runda/aaaaaaaaaaaaaaaaaaaa/clasament | Cod sursa (job #3215679)
#include <iostream>
#include <fstream>
#include <stack>
#include <vector>
#include <iterator>
#include <algorithm>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
long long n,bestsum=-4294967295,maxel=-4294967295,maxp,bestst,bestdr;
int main()
{
fin >> n;
long long st=1,dr=0,sum=0;
for(int i=1;i<=n;i++)
{
int x;
fin >> x;
if(maxel<x)
{
maxel=x;
maxp=i;
}
sum+=x;
dr++;
if(sum<0)
{
st=i+1;
dr=i;
sum=0;
}
else
{
if(sum>bestsum)
{
bestsum=sum;
bestst=st;
bestdr=dr;
}
}
}
if(maxel>0) fout << bestsum << " " << bestst << " " << bestdr;
else
{
fout << maxel << " " << maxp << " " << maxp;
}
return 0;
}