Cod sursa(job #1338071)

Utilizator MihailPJack ONeill MihailP Data 9 februarie 2015 19:26:55
Problema Secventa 2 Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.59 kb
#include <stdio.h>
#include <stdlib.h>
int main()
{
	FILE *f, *g;
	f = fopen("secv2.in", "r");
	g = fopen("secv2.out", "w");
	int N, A[50000], i, best, poz_i, k, max, rez_i, rez_f, rez;
	fscanf(f, "%d %d", &N, &k);
	poz_i = 0;
	best = 0;
	max = INT_MIN;
	for (i = 0; i <= N; i++)
	{
		fscanf(f, "%d", &A[i]);
		if (best + A[i] > max)
		{
			rez_i = poz_i;
			rez_f = i;
			rez = best + A[i];
			max = best + A[i];
		}
		if (best + A[i]<0)
		{
			poz_i = i + 1;
			best = 0;
		}
		else
		{
			best += A[i];
		}
		
	}

	fprintf(g, "%d %d %d", rez_i + 1, rez_f + 1, rez);
}