Cod sursa(job #171795)

Utilizator thestickTudor A thestick Data 5 aprilie 2008 09:21:58
Problema Secventa Scor 30
Compilator c Status done
Runda Arhiva de probleme Marime 0.72 kb
//SCHIMBA CONSTANTELE
//SCHIMBA CONSTANTELE
//SCHIMBA CONSTANTELE
//SCHIMBA CONSTANTELE

#include <stdio.h>

long n,k;
long dq[500000],s=0,f=0;
long gbm=-30000,gbs,gbf;

void pr(long a)
{
dq[f++]=a;
}

void pl()
{
dq[s++]=0;
}

void update_min()
{
long i,min=+30000;
for(i=s;i<f;i++)
if(dq[i]<min)min=dq[i];
if(min>gbm)
        {
        gbm=min;
        gbs=s+1;
        gbf=f;
        }
}

void tip()
{
FILE *f;
f=fopen("secventa.out","w");
fprintf(f,"%ld %ld %ld\n",gbs,gbf,gbm);
fclose(f);
}

int main()
{
FILE *f;
long i,a;
f=fopen("secventa.in","r");
fscanf(f,"%ld %ld",&n,&k);

for(i=0;i<k;i++)
{
fscanf(f,"%ld",&a);
pr(a);
}

for(i=0;i<=n-k;i++)
{
fscanf(f,"%ld",&a);
update_min();
pl();pr(a);
}
fclose(f);
tip();
return 0;
}