Cod sursa(job #254291)

Utilizator mottyMatei-Dan Epure motty Data 7 februarie 2009 10:46:08
Problema Cuburi2 Scor 0
Compilator cpp Status done
Runda Stelele Informaticii 2009, clasele 9-10, ziua 2 Marime 0.64 kb
#include<stdio.h>

#define N 250001

int p,c,t[N],n,m;

void cit()
{
	scanf("%d%d",&n,&m);
	for( int i=1 ; i<=n ; ++i )
		scanf("%d",&t[i]);
}

void calc( int x , int y )
{
	int max=0;
	c=0;
	for( int i=x ; i<=y ; ++i )
	{
		if( t[i]>max )
		{
			p=i;
			max=t[i];
		}
	}
	for( int i=x ; i<=y ; ++i )
		if(i<p)
			c+=(p-i)*t[i];
		else if(i>p)
			c+=(i-p)*t[i];
}

void afis()
{
	int x,y;
	for( int i=0 ; i<m ; ++i )
	{
		scanf("%d%d",&x,&y);
		calc(x,y);
		printf("%d %d\n",p,c);
	}
}

int main()
{
	freopen("cuburi2.in","r",stdin);
	freopen("cuburi2.out","w",stdout);
	cit();
	afis();
	return 0;
}