Pagini recente » Cod sursa (job #715115) | Cod sursa (job #2668488) | Cod sursa (job #980134) | Cod sursa (job #1308819) | Cod sursa (job #275672)
Cod sursa(job #275672)
#include <stdio.h>
#define NMAX 250001
long n,m,x,y,i,j,h,v[NMAX],a[2][NMAX];
void min(int st, int dr)
{
long i,min,p;
p=st; min=a[0][st]+a[1][st];
for (i=st+1;i<=dr;++i)
if (min>(a[0][i]+a[1][i]))
{
min=a[0][i]+a[1][i];
p=i;
}
printf("%ld %ld\n", p, min);
}
int main()
{
freopen("cuburi2.in","r",stdin);
freopen("cuburi2.out","w",stdout);
scanf("%ld %ld", &n, &m);
for (i=1;i<=n;++i)
scanf("%ld", &v[i]);
for (i=1;i<=m;++i)
{
scanf("%ld %ld", &x, &y);
for (j=x;j<=y;++j)
{ a[0][j]=0; a[1][j]=0; }
for (j=x+1;j<=y;++j)
for (h=j-1;h>=x;--h)
a[0][j]+=v[h]*(j-h);
for (j=y-1;j>=x;--j)
for (h=j+1;h<=y;++h)
a[1][j]+=v[h]*(h-j);
min(x,y);
}
return 0;
}