Cod sursa(job #254308)

Utilizator Andreid91Ciocan Andrei Andreid91 Data 7 februarie 2009 11:04:40
Problema Cuburi2 Scor 20
Compilator cpp Status done
Runda Stelele Informaticii 2009, clasele 9-10, ziua 2 Marime 0.6 kb
 #include<fstream.h>

 int v[500],n,m,i,j,min,poz,x,y;
 long long a1[500][500];

 int main()
 {
 ifstream f("cuburi2.in");
 f>>n>>m;
 for (i=1;i<=n;i++)
	f>>v[i];
 for (i=1;i<=n;i++)
	{
	a1[i][i]=0;
	for (j=i+1;j<=n;j++)
		a1[i][j]=a1[i][j-1]+v[j]*(j-i);
	for (j=i-1;j>=1;j--)
		a1[i][j]=a1[i][j+1]+v[j]*(i-j);
	}
 ofstream g("cuburi2.out");
 for (i=1;i<=m;i++)
	{
	f>>x>>y;
	min=a1[x][y];
	poz=x;
	for (j=x+1;j<=y;j++)
		if (a1[j][y]+a1[j][x]<min) {
					   poz=j;
					   min=a1[j][y]+a1[j][x];
					   }
	g<<poz<<' '<<min<<'\n';
	}
 g.close();
 f.close();
 return 0;
 }