Cod sursa(job #2097247)
| Utilizator | Data | 30 decembrie 2017 19:52:58 | |
|---|---|---|---|
| Problema | Secventa 2 | Scor | 90 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.99 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("secv2.in");
ofstream g("secv2.out");
int i,j,n,m,nr=0,v[50010],k,in1,in2,fin1,fin2;
long long sum=-25010,sp=0;
int main()
{
f>>n>>k;
for(i=1;i<=n;i++)
f>>v[i];
for(i=1;i<=n;i++)
{
if(in1==0)
{
in1=i;
sp+=v[i];
nr++;
}
else
{
sp+=v[i];
nr++;
if(nr>=k)
{
if(sp>sum)
{
sum=sp;
in2=in1;
fin2=i;
}
if(sp<0)
{
in1++;
nr--;
sp-=v[in1-1];
}
}
if(sp<v[i])
{
in1=i;
nr=1;
sp=v[i];
}
}
}
g<<in2<<' '<<fin2<<' '<<sum;
}
