Cod sursa(job #139279)
| Utilizator | Data | 19 februarie 2008 21:36:54 | |
|---|---|---|---|
| Problema | Bilute | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.5 kb |
#include<fstream.h>
#include<iostream.h>
using namespace std;
const int N=30100;
long long c[N],l[N],num,lu,b[N],cb[N],dupa,ca,aux,j,i,m,n;
int main()
{
ifstream in("bilute.in");
ofstream out("bilute.out");
in>>n;
for(i=1;i<=n;i++){
in>>c[i]>>l[i];
num+=c[i];
lu+=c[i]*l[i];
b[i+1]=b[i]+c[i];
cb[i+1]=cb[i]+b[i+1];}
m=2000000000;
m*=100;
for(i=n;i>=1;i--){
aux=cb[i]+lu-c[i]*l[i]+ca;
if(aux<=m){ m=aux; j=i;}
dupa+=c[i];
ca+=dupa;}
out<<j<<" "<<m<<endl;
out.close();
}
