Pagini recente » Cod sursa (job #1956188) | Cod sursa (job #2594646) | Cod sursa (job #2139523) | Cod sursa (job #2520823) | Cod sursa (job #1240227)
#include<cstdio>
#include<algorithm>
#include<cstring>
#include<vector>
#define INF 2000000000
using namespace std;
int n,i,j,p,q,m,nr,sol;
int v[1005];
vector < int >a[5005];
int main()
{
freopen("cuburi2.in","r",stdin);
freopen("cuburi2.out","w",stdout);
scanf("%d %d",&n,&m);
for (i=1;i<=n;i++)
scanf("%d",&v[i]);
for (i=1;i<=n;i++)
{
p=INF;
for (j=0;j<n;j++)
{
if (i!=1) a[i].push_back(a[(i-1)][j]+(v[i]*(abs(i-j-1))));
else a[i].push_back(abs(i-j-1)*v[i]);
// a[i][j]=a[(i-1)][j]+(v[i]*(abs(i-j)));
//if (p>a[i][j]) q=j,p=a[i][j];
}
}
while (m--)
{
scanf("%d %d",&p,&q); sol=INF;
if (p-1==0)
{
for (j=0;j<n;j++) if (a[q][j]<sol) sol=a[q][j],nr=j;
}else
{for (j=0;j<n;j++) if (a[q][j]-a[p-1][j]<sol)
sol=a[q][j]-a[p-1][j],nr=j;}
printf("%d %d\n",nr+1,sol);
}
return 0;
}