Cod sursa(job #1443741)
Utilizator | Lazar Alexandru Stickman | Data | 28 mai 2015 16:24:56 |
---|---|---|---|
Problema | Secventa 2 | Scor | 70 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.81 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("secv2.in");
ofstream out("secv2.out");
int n, m;
int a, b;
int v[50001];
int s[50001];
int main()
{
in>>n>>m;
for(int i = 0; i<n; i++)
{
in>>v[i];
if(i>0)
s[i]=s[i-1]+v[i];
else s[0]=v[0];
}
int max = -9999999;
int sumC;
for(int k = n-1; k>-1; k--)
{
sumC = s[k];
if(sumC>max)
{
max = sumC;
a = 0;
b = k;
}
for(int j = 0; j+m<k; j++)
{
sumC-=v[j];
if(sumC > max)
{
max = sumC;
a = j + 1;
b = k;
}
}
}
out<<a+1<<" "<<b+1<<" "<<max;
}