Cod sursa(job #2005525)
| Utilizator | Data | 27 iulie 2017 13:26:55 | |
|---|---|---|---|
| Problema | Secventa 2 | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.69 kb |
#include <iostream>
#include <fstream>
using namespace std;
int v[50005],s[50005];
int main()
{
ifstream in("secv2.in");
ofstream out("secv2.out");
int n,k,i,j,Max=-1250000005,poz1,poz2;
in >> n >> k;
for (i = 1; i<=n; i++)
{
in >> v[i];
s[i]+=v[i-1];
}
if (k == n)
{
poz1 = 1;
poz2 = n;
}
else
poz1 = poz2 = 0;
for (i = k+1; i<=n; i++)
{
if (s[i]-s[poz1] < s[i] - s[i-k])
poz1 = i-k;
if (s[i]-s[poz1]>Max)
{
Max = s[i]-s[poz1];
poz2 = i;
}
}
out << poz1 << " " << poz2 << " " << Max;
return 0;
}
