Pagini recente » Cod sursa (job #543137) | Cod sursa (job #2192769) | Cod sursa (job #2298100) | Cod sursa (job #1668995) | Cod sursa (job #845181)
Cod sursa(job #845181)
#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 v[N], sum[N], i, j, n, k, min_sum = 1<<30, max_sum = -1<<30, poz_min, poz_max;
int main()
{
ifstream fin("secv2.in");
ofstream fout("secv2.out");
//Read
fin>>n>>k;
for(i=1; i<=n; i++)
fin>>v[i];
//Compute
for(i=1; i<=n; i++)
{
sum[i] = sum[i-1]+v[i];
if(sum[i] < min_sum)
{
min_sum = sum[i];
poz_min = i;
}
if(i - poz_min >= k)
if(sum[i] - min_sum > max_sum)
{
max_sum = sum[i] - min_sum;
poz_max = i;
}
}
//Print
fout<<poz_min+1<<" "<<poz_max<<" "<<max_sum;
}