Pagini recente » Cod sursa (job #1556292) | Cod sursa (job #2246572) | Cod sursa (job #2563484) | Cod sursa (job #1304437) | Cod sursa (job #1312696)
#include <stdio.h>
#define DIM 10000
FILE *fin,*fout;
char buff[DIM];
int poz=0;
void citeste(int &numar)
{
numar = 0;
char semn='+';
while (buff[poz] < '0' || buff[poz] > '9')
{
semn = buff[poz];
if (++poz == DIM)
fread(buff,1,DIM,fin),poz=0;
}
while ('0'<=buff[poz] && buff[poz]<='9')
{
numar = numar*10 + buff[poz] - '0';
if (++poz == DIM)
fread(buff,1,DIM,fin),poz=0;
}
if (semn == '-')
numar = -numar;
}
int su[50001];
int main()
{
fin=fopen("secv2.in","r");
fout=fopen("secv2.out","w");
int n,k;
citeste(n);
citeste(k);
citeste(su[0]);
for(int i=1;i<n;i++)
{
citeste(su[i]);
su[i]+=su[i-1];
}
int s=0,maxim=-1250000000;
int post,posti;
for(int i=0;i<=n-k;i++)
{
s=0;
s=su[i+k-1]-su[i-1];
if(maxim<s)
{
maxim=s;
post=i+k;
posti=i+1;
}
for(int j=i+k;j<n;j++)
{
s=su[j]-su[i-1];
if(maxim<s)
{
maxim=s;
post=j+1;
posti=i+1;
}
}
}
fprintf(fout,"%d %d %d",posti,post,maxim);
}