Cod sursa(job #316933)

Utilizator nicolaetitus12Nicolae Titus nicolaetitus12 Data 21 mai 2009 17:31:51
Problema Secventa 2 Scor 0
Compilator c Status done
Runda Arhiva de probleme Marime 0.91 kb
#include <stdio.h>
#define N 8192
#define M 50001
char b[N];
int sir[M];
int bi,n,k;
int citeste()
{int nr=0,semn=1;
 while(!isdigit(b[bi])&&b[bi]!='-')
 {bi++;
  if(b[bi]==NULL)
  {if(fgets(b,N,stdin)==NULL)
   {return semn*nr;
   }
   bi=0;
  }
 }
 if(b[bi]=='-')
 {semn=-1;
  if(b[++bi]==NULL)
  {if(fgets(b,N,stdin)==NULL)
   {return semn*nr;
   }
   bi=0;
  }
 }
 while(isdigit(b[bi]))
 {nr=nr*10+b[bi]-'0';
  if(b[++bi]==NULL)
  {if(fgets(b,N,stdin)==NULL)
   {return semn*nr;
   }
   bi=0;
  }
 }
 return semn*nr;
}

int main ()
{freopen("secv2.in","r",stdin);
 freopen("secv2.out","w",stdout);
 n=citeste();
 k=citeste();
 int i,s=0,max=-20000000,pmax;
 for (i=1;i<=n;i++)
 {sir[i]=citeste();
 }
 for (i=1;i<k;i++)
 {s+=sir[i];}
 for (;i<=n;i++)
 {s+=sir[i];s-=sir[i-k];
  if(s>max)
  {max=s;
   pmax=i;
  }
 }
 printf("%d %d %d",pmax-k,pmax-1,max);
 return 0;
}