Cod sursa(job #150655)

Utilizator rethosPaicu Alexandru rethos Data 7 martie 2008 10:55:01
Problema Secventa Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include <stdio.h>
#define NM 500001
#define INF 0x7fff
#define min(x,y) (x>y?y:x)
int main()
{ FILE *f=fopen("secventa.in","rt");
  int l[2][NM],lc,a[NM];
  long n,ka,i,k,max,kmax,min;
  fscanf(f,"%ld %ld",&n, &ka);
  for (i=1;i<=n;i++) fscanf(f,"%d",&a[i]);
  fclose(f);
  for (i=1;i<=n;i++) l[1][i]=a[i];
  for (k=2;k<=ka;k++)
	{ lc=k%2;
	  for (i=1;i<=n-k+1;i++)
		 l[lc][i]=min(a[i],l[1-lc][i]);
	}
  max=l[lc][1],kmax=1;
  for (i=2;i<=n-ka+1;i++)
	if (l[lc][i]>max)
		{ max=l[lc][i];
		  kmax=i;
		}
  FILE *g=fopen("secventa.out","wt");
  fprintf(g,"%ld %ld %ld",kmax,kmax+ka-1,max);
  fclose(g);
  return 0;
}