Cod sursa(job #1161585)
Utilizator | Data | 31 martie 2014 12:24:27 | |
---|---|---|---|
Problema | Secventa 2 | Scor | 90 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.71 kb |
#include <fstream>
using namespace std;
ifstream f("secv2.in");
ofstream g("secv2.out");
int i,j,n,k,x,y;
int v[50001];
int main()
{
f>>n>>k;
for (i=1;i<=n;++i)
f>>v[i],v[i]+=v[i-1];
int st=1,dr=k,sum=v[k],M=v[k];
for(i=k+1;i<=n;++i)
{
if (v[i]-v[i-k] > sum + v[i]-v[i-1])
{
st = i - k + 1;
dr = i ;
sum= v[i] - v[i-k];
}
else
{
sum+=v[i]-v[i-1];
dr=i;
}
if (sum>M)
M=v[dr]-v[st-1],x=st,y=dr;
}
g<<x<<" "<<y<<" "<<M;
return 0;
}