Submission #1292531

#TimeUsernameProblemLanguageResultExecution timeMemory
1292531AbdullahIshfaqFoehn Phenomena (JOI17_foehn_phenomena)C++20
100 / 100
204 ms7248 KiB
#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define MOD 998244353
const ll N = 2e5 + 5, mod = 1e9 + 7;
ll a[N], b[N], q, s, t, n, cur;
void add(ll i, ll f)
{
	if (b[i] > 0)
	{
		cur -= s * b[i] * f;
	}
	else
	{
		cur -= t * b[i] * f;
	}
}
void solve()
{
	cin >> n >> q >> s >> t;
	for (ll i = 0; i <= n; i++)
	{
		cin >> a[i];
		if (i != 0)
		{
			b[i] = a[i] - a[i - 1];
		}
		add(i, 1);
	}
	while (q--)
	{
		ll l, r, x;
		cin >> l >> r >> x;
		add(l, -1);
		if (r != n)
		{
			add(r + 1, -1);
		}
		b[l] += x;
		b[r + 1] -= x;
		add(l, 1);
		if (r != n)
		{
			add(r + 1, 1);
		}
		cout << cur << endl;
	}
}
int main()
{
	ios_base::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
	ll t = 1;
	// cin >> t;
	for (ll i = 1; i <= t; i++)
	{
		solve();
	}
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...