Editorial for 社內賽


記住 在沒有思路時使用題解,不要複製貼上代碼。請尊重題目和題解的作者。
在真正親自解開題目前提交官方題解的代碼是可以封禁的罪行。

作者: a002

僅供參考

#define pb push_back
#define ll long long
#define pll pair<long long, long long>
#define all(x) x.begin(), x.end()
using namespace std;

const ll p = 1e9+7;

int main() {

    ll n;cin >> n;
    vector<pll> v;
    for(int i = 0;i < n;i++) {
        ll a, b;cin >> a >> b;
        v.pb({a, b});
    } 

    sort(all(v), [](pll a, pll b) {
        return a.second*b.first < a.first*b.second;
    });

    ll now = 0, ans = 0;
    for(auto i : v) {
        now += i.second;
        now %= p;
        ans += now*i.first;
        ans %= p;
    }

    cout << ans;

    return 0;
}

留言

目前沒有評論。