Pagini recente » Cod sursa (job #2963898) | Cod sursa (job #3227739) | Cod sursa (job #658886) | Cod sursa (job #345883) | Cod sursa (job #1862380)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("bilute.in");
ofstream fout("bilute.out");
const int Nmax=30005;
int N,C[Nmax],L[Nmax],S[Nmax];
long long Sol1,Sol2,cost;
void Read()
{
int N;
fin>>N;
for(int i=1;i<=N;++i)
fin>>C[i]>>L[i];
}
void Solve()
{
S[1]=C[1];
for(int i=2;i<=N;++i)
S[i]=S[i-1]+C[i];
for(int i=2;i<=N;++i)
cost+=C[i]*L[i]+C[i]*(i-1);
Sol2=cost;
for(int i=2;i<=N;++i)
{
cost+=C[i-1]*L[i-1]-C[i]*L[i]+2*S[i-1]-S[N];
if(cost<Sol2)
{
Sol1=i;
Sol2=cost;
}
}
}
int main()
{
Read(); Solve();
fout<<Sol1<<" "<<Sol2<<"\n";
}