Cod sursa(job #2859336)

Utilizator AlexNicuNicu Alexandru AlexNicu Data 1 martie 2022 10:39:55
Problema Bilute Scor 100
Compilator cpp-64 Status done
Runda tagalaibas Marime 0.76 kb
#include <fstream>

using namespace std;

ifstream cin ( "bilute.in" );
ofstream cout ( "bilute.out" );

#define NMAX 30005
#define int long long

int sump[NMAX];
int a[NMAX], b[NMAX];

signed main() {
    int n, i, sum, minn, poz;
    cin >> n;
    sum = 0;
    for ( i = 1; i <= n; i++ ) {
        cin >> a[i] >> b[i];
        sump[i] = sump[i - 1] + a[i];
        sum += a[i] * b[i] + a[i] * ( i - 1 );
    }
    sum -= ( a[1] * b[1]  );
    minn = sum;
    poz = 1;
    for ( i = 2; i <= n; i++ ) {
        sum -= (sump[n] - sump[i]);
        sum += sump[i - 1];
        sum += a[i - 1] * b[i - 1];
        sum -= (a[i] * b[i] + a[i]);
        if ( minn > sum ) {
            minn = sum;
            poz = i;
        }
    }
    cout << poz << " " << minn;
    return 0;
}