Cod sursa(job #542697)
Utilizator | Data | 26 februarie 2011 20:18:10 | |
---|---|---|---|
Problema | Secventa 2 | Scor | 70 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.54 kb |
#include<fstream>
using namespace std;
int s[50002],a[50002];
int main()
{
int i,n,k,smax=-2000000000,lim,suma,inc,sf,st,dr;
ifstream fin("secv2.in");
fin>>n>>k;
for(i=1;i<=n;i++)
{
fin>>a[i];
s[i]=s[i-1]+a[i];
}
fin.close();
st=1;
dr=k;
lim=n+1;
while(st<lim && dr<lim)
{
suma=s[dr]-s[st-1];
if(suma>smax)
{
smax=suma;
inc=st;
sf=dr;
}
if(dr<n)
dr++;
if(a[st]<1 || dr==n)
st++;
}
ofstream fout("secv2.out");
fout<<inc<<' '<<sf<<' '<<smax<<"\n";
fout.close();
return 0;
}