Cod sursa(job #385215)

Utilizator shnakoVlad Schnakovszki shnako Data 22 ianuarie 2010 12:40:45
Problema Deque Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.59 kb
#include <stdio.h>
#define MARE 10000005
FILE *f=fopen("deque.in", "r"), *g=fopen("deque.out", "w");
long v[5000000], n, k, ls, ld, poz, min, i, t;
long long s;


void deque(void)
{
	fscanf(f, "%ld%ld", &n, &k);
	for (i=1;i<=k;i++)
		fscanf(f, "%ld", &v[i]);
	while (!feof(f))
	{
		min=MARE;
		for (i=1;i<=k;i++)
			if (v[i]<=min)
			{
				min=v[i];
				poz=i;
			}
		s+=poz*min;
		t=0;
		for (i=poz+1;i<=k;i++)
			v[++t]=v[i];
		for (i=k-poz+1;i<=k&&!feof(f);i++)
			fscanf(f, "%d", &v[i]);
	}
}

	
int main(void)
{
	deque();
	fprintf(g, "%lld", s);
	return 0;
}