记录编号 589466 评测结果 AAAAAAAAAA
题目名称 焚风现象 最终得分 100
用户昵称 Gravatar彭欣越 是否通过 通过
代码语言 C++ 运行时间 4.382 s
提交时间 2024-07-05 17:24:09 内存使用 7.91 MiB
显示代码纯文本
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
long long n,q,s,t,a[200010],ans,b[200010];
ll temp (ll x){
	if(x>=0) return -x*s;
	else return -x*t;
}
int main () {
    freopen("foehn.in","r",stdin);
    freopen("foehn.out","w",stdout);
    cin >> n >> q >> s >> t;
    cin >> a[0];
    for (int i=1;i<=n;i++) {
        cin >> a[i];
        b[i]=a[i]-a[i-1];
        ans+=temp(b[i]);
    }
    while (q--) {
        ll l,r,k;
        cin >> l >> r >> k;
        ans-=temp(b[l]);
        b[l]+=k;
        ans+=temp(b[l]);
        if (r<n) {
            ans-=temp(b[r+1]);
            b[r+1]-=k;
            ans+=temp(b[r+1]);
        }
        cout << ans <<endl;
    }
    return 0;
}