Cod sursa(job #415304)

Utilizator feelshiftFeelshift feelshift Data 11 martie 2010 08:51:38
Problema Secventa Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.85 kb
// http://infoarena.ro/problema/secventa

#include <stdio.h>
int array[10],stack[10],n,k,i,e,min = 30001,min_next = 30001,position;

FILE * in = fopen("secventa.in","rt");
FILE * out = fopen("secventa.out","wt");

int main()
{
     fscanf(in,"%d",&n);
     fscanf(in,"%d",&k);
     
     for(i=1;i<=n;i++)
	  fscanf(in,"%d",&array[i]);
     
     for(i=1;i<=k;i++)
     {
	  stack[i] = array[i];
	  
	  if(stack[i] < min)
	       min = stack[i];
     }
     
     for(i=k+1;i<=n-k+1;i++)
     {
	  min_next = 30001;
	  position = 0;
	  
	  for(e=i;e<i+k;e++)
	  {
	       if(array[e] > min && min_next > array[e])
		    min_next = array[e];
	  }
	  
	  if(min_next > min)
	  {
	       for(e=i;e<=i+k;e++)
		    stack[++position] = array[e];	  
	       min = min_next;
	  }
     }
     
     for(i=1;i<=k;i++)
	  fprintf(out,"%d ",stack[i]);
     
     return (0);
     
}