Cod sursa(job #845192)

Utilizator Detrol2kGuianu Leon Detrol2k Data 30 decembrie 2012 16:07:07
Problema Secventa 2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <fstream>
#include <algorithm>
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <iostream>
#include <string.h>
#include <vector>
using namespace std;

#define N 50001

int sum[N], i, j, n, k, min_sum = 1<<30, max_sum = -1<<30, poz_min, poz_max, x, aux_poz;

int main()
{
	ifstream fin("secv2.in");
	ofstream fout("secv2.out");
	
	//Read
	fin>>n>>k;
	for(i=1; i<=n; i++)
	{
		fin>>x;
		sum[i] = sum[i-1]+x;
	}	


	//Compute
	for(i=k; i<=n; i++)
	{
		if(sum[i-k] < min_sum)
		{
			min_sum = sum[i-k];
			aux_poz = i-k;
		}
		if(sum[i] - min_sum > max_sum )
		{
			max_sum = sum[i] - min_sum;
			poz_max = i;
			poz_min = aux_poz+1;
		}	
	}


	//Print
	fout<<poz_min<<" "<<poz_max<<" "<<max_sum;
}