Pagini recente » Cod sursa (job #2939807) | Cod sursa (job #704668) | Cod sursa (job #704659) | Cod sursa (job #883762) | Cod sursa (job #1131932)
#include <iostream>
#include <fstream>
#include <limits.h>
using namespace std;
int main()
{
int *v, *s, max, min, poz[2] = { 1, 1 }, n;
ifstream in("ssm.in");
ofstream out("ssm.out");
in >> n;
v = new int[n];
s = new int[n];
in >> v[0];
s[0] = v[0];
min = v[0];
max=min;
for (int i = 1; i < n; i++)
{
in >> v[i];
s[i] = s[i - 1] + v[i];
if (s[i] < min)
{
min = s[i];
poz[0] = i+1;
}
else
{
if (s[i] - min > max)
{
poz[1] = i;
max = s[i] - min;
}
}
}
out << max << " "<< poz[0] + 1 <<" "<< poz[1] + 1;
delete[] v;
delete[] s;
return 0;
}