Pagini recente » Cod sursa (job #2825762) | Cod sursa (job #3246542) | Cod sursa (job #1681410) | Cod sursa (job #396709) | Cod sursa (job #2815334)
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
ifstream fin("secv2.in");
ofstream fout("secv2.out");
int main()
{
int n, k;
fin>>n>>k;
vector <int> v(n + 1);
vector <int> sp(n + 1);
for(int i = 0; i < n; i++)
{
fin>>v[i];
}
sp[0] = v[0];
for(int i = 1; i < n; i++)
{
sp[i] = sp[i - 1] + v[i];
}
int dr = 0, drr = 0, st = 0, str = 0;
bool ok = false;
int suma_max = (1 << 31), suma_min = 0;
for(int i = 1; i < n; i++)
{
if(sp[i] - sp[suma_min] > suma_max)
{
if(i - suma_min >= k)
{
suma_max = sp[i] - sp[suma_min];
st = suma_min + 1;
dr = i;
}
}
if(sp[i] < sp[suma_min])
{
suma_min = i;
}
}
fout<<st + 1<<" "<<dr + 1<<" "<<suma_max;
return 0;
}