Pagini recente » Cod sursa (job #1271449) | Cod sursa (job #1065005) | Cod sursa (job #2821264) | Cod sursa (job #2230718) | Cod sursa (job #1644129)
#include <fstream>
using namespace std;
ifstream fin("bilute.in");
ofstream fout("bilute.out");
typedef long long i64;
const int nmax= 30000;
int c[nmax+1], l[nmax+1], s[nmax+1];
int main( ) {
int n, sum= 0;
fin>>n;
for ( int i= 1; i<=n; ++i ) {
fin>>c[i]>>l[i];
s[i]= s[i-1]+c[i];
sum= sum+l[i]*c[i];
}
i64 x= 1, y= 0, minim= 0;
for ( int i= 1; i<=n; ++i ) {
y= (i64)y+(i64)c[i]*(i-1);
}
minim= (i64)y+sum-l[1]*c[1];
for ( int i= 2; i<=n; ++i ) {
y= (i64)y+(i64)s[i-1]*2-s[n];
if ( (i64)y+sum-(i64)l[i]*c[i]<minim ) {
x= i;
minim= (i64)y+sum-l[i]*c[i];
}
}
fout<<x<<" "<<minim<<"\n";
return 0;
}