Cod sursa(job #27503)

Utilizator dragomir_andreiDragomir Andrei dragomir_andrei Data 6 martie 2007 14:41:07
Problema Secventa Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include<stdio.h>
long int n,k,p,u,b,ps,us,i;
int vb,vbs,x[500000];
int main()
{	FILE *f=fopen("secventa.in","r");
	FILE *g=fopen("secventa.out","w");
	fscanf(f,"%ld%ld",&n,&k);
	p=1;u=1;b=1;
	fscanf(f,"%d",&x[1]);
	vb=x[1];
	for(u=2;u<=k;u++)
	{	fscanf(f,"%d",&x[u]);
		if(x[u]<vb) {b=u; vb=x[u];}
	}
	u--;
	us=u; ps=p; vbs=vb;
	while(u<=n){ u++; p++;
				 fscanf(f,"%d",&x[u]);
				 if(p>=b) 
				 {if(x[u]<=vb) {vb=x[u]; b=u;}}
				 else {	b=p; vb=x[p]; 
						for(i=p+1;i<=u;i++)
						if(x[i]<=vb)
							{ vb=x[i]; b=i;}
						if(vb>vbs) {vbs=vb; us=u; ps=p;}
						}
				 }
	fprintf(g,"%ld %ld %ld\n",ps,us,vbs);
	fcloseall();
	return 0;
}