Cod sursa(job #116911)

Utilizator rethosPaicu Alexandru rethos Data 19 decembrie 2007 20:05:28
Problema Bilute Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.59 kb
#include <fstream.h>
#define NMAX 30001
long c[NMAX],l[NMAX],a[NMAX][NMAX],s[NMAX],min,imin,n;
long abs(long x)
{ if (x>0) return x;
	return -x;
}
int main()
{ long i,j;
  ifstream f("bilute.in");
  ofstream g("bilute.out");
  f>>n;
  for (i=1;i<=n;i++)
	 f>>c[i]>>l[i];
  f.close();
  for (i=1;i<=n;i++)
	for (j=1;j<=n;j++)
		if (i==j) a[i][j]=0;
		    else a[i][j]=c[i]*(l[i]+abs(i-j));
  for (i=1;i<=n;i++)
	for (j=1;j<=n;j++)
		s[i]+=a[i][j];
  min=s[1];imin=1;
  for (i=2;i<=n;i++)
	if (s[i]<min) { min=s[i];imin=i;}
  g<<imin<<' '<<s[imin];
  g.close();
  return 0;
}