Pagini recente » Cod sursa (job #2521939) | Cod sursa (job #393014) | Cod sursa (job #3221218) | Cod sursa (job #2259296) | Cod sursa (job #2117375)
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <vector>
#include <climits>
using namespace std;
FILE * f = fopen("date.in", "r");
FILE * g = fopen("date.out", "w");
vector<int> sec, x;
int main()
{
int n, istart, ifinal, inceput, final, suma = 0, mx = INT_MIN, p;
fscanf(f, "%i", &n);
x.push_back(0);
for (int i = 1; i <= n; i++)
{
fscanf(f, "%i", &p);
x.push_back(p);
}
sec.push_back(0);
for (int i = 1; i <= n; i++)
{
if (sec[i - 1] < 0)
{
sec.push_back(x[i]);
inceput = final = i;
}
else
{
sec.push_back(sec[i - 1] + x[i]);
final = i;
}
if (sec[i] > mx)
{
mx = sec[i];
ifinal = final;
istart = inceput;
}
}
fprintf(g, "%i %i %i", mx, istart, ifinal);
return 0;
}