Pagini recente » Borderou de evaluare (job #1207315) | Cod sursa (job #776135) | Cod sursa (job #2954452) | Cod sursa (job #2878847) | Cod sursa (job #399578)
Cod sursa(job #399578)
#include <fstream>
using namespace std;
#define MAX_N 6000005
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int s[MAX_N], best[MAX_N];
int n;
int main()
{
fin >> n;
int x;
for ( int i = 1; i <= n; ++i )
{
fin >> x;
s[i] = s[i-1] + x;
}
int sum = 0, smax = -2000000000, i1, j1, i2;
for ( int i = 1; i <= n; ++i )
{
if ( smax < s[i] - sum )
{
smax = s[i] - sum;
i1 = i2 + 1;
j1 = i;
}
if ( sum > s[i] )
{
sum = s[i];
i2 = i;
}
}
fout << smax << ' ' << i1 << ' ' << j1 << '\n';
fin.close();
fout.close();
return 0;
}