Pagini recente » Cod sursa (job #848828) | Cod sursa (job #3190189) | Cod sursa (job #1593563) | Cod sursa (job #1749169) | Cod sursa (job #2072491)
#include <iostream>
#include <fstream>
using namespace std;
ofstream fo("ssm.out");
ifstream fi("ssm.in");
int n, a[6000001],S,a1,b1,b2,a2;
void citire()
{
fi>>n;
for(int i=1; i<=n; i++)
fi>>a[i];
}
void ssm ()
{
int SumaMax=-10000000;
a1=1;
b1=1;
a2=1;
b2=1;
S=a[1];
for(int i=2; i<=n; i++)
{
if(S+a[i] >= a[i])
{ S=S+a[i];
b1++;
}
else
{a1=i;
b1=i;
S=a[i];
}
if(SumaMax==S)
{
if(a1==a2)
{
if(b1<b2)
{
a2=a1;
b2=b1;
SumaMax=S;
}
}
}
else if( SumaMax<S)
{
a2=a1;
b2=b1;
SumaMax=S;
}
}
fo<<SumaMax<<" "<<a2<<" "<<b2;
}
int main()
{
citire();
ssm();
return 0;
}