Pagini recente » Cod sursa (job #1722879) | Cod sursa (job #584558) | Cod sursa (job #128550) | Istoria paginii runda/simulare_oni_9_2 | Cod sursa (job #1774093)
#include <stdio.h>
#include <ctype.h>
#define BUF_SIZE 131072
FILE *fin,*fout;
int v[50000],pos=BUF_SIZE;
char buf[BUF_SIZE];
inline char getch()
{
if(pos==BUF_SIZE)
fread(buf,BUF_SIZE,1,fin),pos=0;
return buf[pos++];
}
inline int getnr()
{
int semn=1,x=0;
char ch=getch();
while(!isdigit(ch) && ch!='-')
ch=getch();
if(ch=='-')
semn*=-1,ch=getch();
while(isdigit(ch))
{
x=x*10+ch-'0';
ch=getch();
}
return x*semn;
}
int main()
{
fin=fopen("secventa2.in","r");
fout=fopen("secventa2.out","w");
int n,dr,st,stmax,drmax,max,k,min;
n=getnr();k=getnr();
st=dr=min=0;stmax=1;drmax=k;
while(dr<k)
{
v[dr]=getnr()+v[dr-1];
dr++;
}
max=v[k-1];
while(dr<n)
{
v[dr]=getnr()+v[dr-1];
if(v[dr-k]<min)
{
min=v[dr-k];
st=dr-k+1;
}
if(max<v[dr]-min)
{
max=v[dr]-min;
stmax=st+1;
drmax=dr+1;
}
dr++;
}
fprintf(fout,"%d %d %d",stmax,drmax,max);
fclose(fin);
fclose(fout);
return 0;
}