Cod sursa(job #1896601)
| Utilizator | Data | 28 februarie 2017 19:39:37 | |
|---|---|---|---|
| Problema | Secventa 2 | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.52 kb |
#include <fstream>
using namespace std;
ifstream cin("secv2.in");
ofstream cout("secv2.out");
int s[50001];
int main()
{
int n, i, k, j, minn = 0, maxx = -1250000000, left = 1, right, posMin;
cin >> n >> k;
int v[50001];
for (i = 1; i <= n; i++)
{
cin >> v[i];
s[i] = s[i - 1] + v[i];
}
for (i = k; i <= n; i++)
{
if (s[i] - minn > maxx) maxx = s[i] - minn, right=i, left = posMin+1;
if (s[i-k+1] < minn) minn = s[i-k+1], posMin = i-k+1;
}
cout << left<<" "<<right<<" "<<maxx;
return 0;
}