90pts WA#2 求助!
查看原帖
90pts WA#2 求助!
548203
KK_lang楼主2022/12/24 23:02

数学课上的题(加权绝对值连加求最值问题)带公式一套就行,或者用几何推一推也能出来。

但是 90pts,求助……

这么晚了应该没人了吧……

#include<bits/stdc++.h>
using namespace std;

const int NR = 1e5 + 10;
unsigned long long l, sum, s, ans;
int n, pos, x[NR], r[NR];

int main()
{
    cin >> l >> n;
    for (int i = 1; i <= n; i++)
    {
        cin >> x[i] >> r[i];
        sum += r[i];
    }
    sum = sum / 2 + 1;
    while (s < sum) s += r[++pos];
    for (int i = 1; i <= n; i++) ans += 1ll * r[i] * abs(x[i] - x[pos]);
    cout << ans << endl;
    return 0;
}
2022/12/24 23:02
加载中...