Pagini recente » Cod sursa (job #1678337) | Cod sursa (job #710990) | Cod sursa (job #2628798) | Cod sursa (job #2093995) | Cod sursa (job #1528317)
#include <fstream>
#include <climits>
#define NM 6000001
using namespace std;
ifstream InF ("ssm.in");
ofstream OutF ("ssm.out");
int a[NM];
unsigned n;
int Max_Sub = INT_MIN;
int sum;
unsigned i, aux, L_Lim, R_Lim;
void scan ();
void solve ();
void print ();
int main ()
{
scan ();
solve ();
print ();
return 0;
}
void scan ()
{
InF >> n;
for (i=0; i<n; i++)
InF >> a[i];
}
void solve ()
{
for (i=0; i<n; i++)
{
if (sum < 0)
{
aux = i+1;
sum = a[i];
}
else
sum += a[i];
if (sum > Max_Sub)
{
Max_Sub = sum;
L_Lim = aux;
R_Lim = i+1;
}
}
}
void print ()
{
OutF << Max_Sub << " " << L_Lim << " " << R_Lim;
}