Pagini recente » Cod sursa (job #429722) | Cod sursa (job #586757) | Cod sursa (job #985543) | Cod sursa (job #346663) | Cod sursa (job #2563026)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f ( "bilute.in" );
ofstream g ( "bilute.out" );
const int NMAX = 30002;
long long mn, C[NMAX], SPC[NMAX], L[NMAX], M[NMAX];
int main()
{
int n, c, poz;
f >> n;
for ( int i = 1; i <= n; i++ )
{
f >> C[i] >> L[i];
SPC[i] = SPC[i - 1] + C[i];
}
for ( int i = 2; i <= n; i++ )
M[1] += L[i] * C[i] + ( i - 1 ) * C[i];
mn = M[1];
poz = 1;
for ( int i = 2; i <= n; i++ )
{
M[i] = M[i - 1] - L[i] * C[i] + L[i - 1] * C[i - 1] - ( SPC[n] - SPC[i - 1] ) + SPC[i - 1];
if ( M[i] < mn )
{
mn = M[i];
poz = i;
}
}
g << poz << ' ' << mn;
return 0;
}