这是某人的题解,违规紫衫
查看原帖
这是某人的题解,违规紫衫
1070123
KamiYap_qwq楼主2024/10/3 16:51
#include <bits/stdc++.h>
using namespace std;
long long n, m, p[999999], a[999999], b[999999], c[999999], zt[999999], mony;
int main()
{
	cin >> n >> m;
	for (int i = 1; i <= m; i++) cin >> p[i];
	for (int i = 1; i < n; i++) cin >> a[i] >> b[i] >> c[i];
	for (int i = 1; i <= m - 1; i++)
	{
		zt[min(p[i], p[i + 1])]++;
		zt[max(p[i], p[i + 1])]--;
	}
	for (int i = 1; i <= n; i++) zt[i] += zt[i - 1];
	for (int i = 1; i < n; i++) mony += min(a[i] * zt[i], (b[i] * zt[i] + c[i]));
	cout << mony;
    return 0;
}
2024/10/3 16:51
加载中...