Cod sursa(job #2859416)

Utilizator BlueLuca888Girbovan Robert Luca BlueLuca888 Data 1 martie 2022 12:17:15
Problema Bilute Scor 100
Compilator cpp-64 Status done
Runda tagalaibas Marime 0.91 kb
#include <bits/stdc++.h>
#pragma GCC optimize ("Ofast")

using namespace std;

ifstream fin  ("bilute.in");
ofstream fout ("bilute.out");

const long long MAX_N = 30005;

long long paint, timp, sol=(1LL<<60), col;
long long n, lft, rgt, st, dr, c[MAX_N], l[MAX_N];

signed main (){
    fin>>n;
    for(long long i=1; i<=n; i++)
        fin>>c[i]>>l[i];

    for(long long i=1; i<=n; i++)
        paint += (long long)c[i] * l[i];

    st = 0;
    lft = 0;
    for(long long i=2; i<=n; i++){
        rgt += (long long)c[i] * (i-1);
        dr += c[i];
    }

    for(long long i=1; i<=n; i++){ ///vopsim in nuanta i
        timp = paint - (long long)c[i] * l[i] + lft + rgt;

        if(timp < sol){
            sol = timp;
            col = i;
        }

        st += c[i];
        lft += st;

        rgt -= dr;
        dr -= c[i+1];
    }
    fout<<col<<" "<<sol;
    return 0;
}