Pagini recente » Cod sursa (job #76021) | Cod sursa (job #2696646) | Cod sursa (job #2987627) | Cod sursa (job #842426) | Cod sursa (job #254754)
Cod sursa(job #254754)
#include <cstdio>
#define inf (1<<31)-1
#define N 10000
int A[N][N],V[N],n,m,min,poz;
int x,y;
int main()
{
freopen("cuburi2.in","r",stdin);
freopen("cuburi2.out","w",stdout);
scanf("%d%d\n",&n,&m);
int i,j;
for (i=1; i<=n; i++) scanf("%d",&V[i]);
for (i=1; i<=n; i++)
{
A[i][i]=A[i-1][i];
for (j=i-1; j; j--) A[i][j]=A[i-1][j]+V[i]*(i-j);
for (j=i+1; j<=n; j++) A[i][j]=A[i-1][j]+V[i]*(j-i);
}
for (i=1; i<=m; i++)
{
scanf("%d%d\n",&x,&y);
min=inf;
for (j=x; j<=y; j++)
if (A[y][j]-A[x-1][j]<min)
{
min=A[y][j]-A[x-1][j];
poz=j;
}
printf("%d %d\n",poz,min);
}
return 0;
}