Cod sursa(job #254554)

Utilizator albuaAlbu Alexandru albua Data 7 februarie 2009 12:56:53
Problema Cuburi2 Scor 10
Compilator cpp Status done
Runda Stelele Informaticii 2009, clasele 9-10, ziua 2 Marime 0.66 kb
#include <stdio.h>
#include <values.h>
#define DMax 1000000

long v[DMax],n,m,i,a,b;

void executa(long a,long b)
{
	long i,min,pmin,j,s;
	min=1000000;
	for(i=a;i<=b;i++)
		{
			s=0;
			//calculez cat miar lu sa le aduc pe toate in a
			for(j=i-a;j>=1;j--)
				s+=j*v[i-j];
			for(j=1;j<=b-i;j++)
				s+=j*v[i+j];
			if(s<min)
				{
					min=s;
					pmin=i;
				}
		}
	printf("%ld %ld\n",pmin,min);
}

int main()
{
	freopen("cuburi2.in","r",stdin);
	freopen("cuburi2.out","w",stdout);
	scanf("%ld %ld\n",&n,&m);
	for(i=1;i<=n;i++)scanf("%ld",&v[i]);
	for(i=1;i<=m;i++)
		{
			scanf("%ld %ld\n",&a,&b);
			executa(a,b);
		}
  return 0;
}