제출 #1322718

#제출 시각아이디문제언어결과실행 시간메모리
1322718laykFoehn Phenomena (JOI17_foehn_phenomena)C++20
100 / 100
63 ms5580 KiB
#include <bits/stdc++.h> #include <ext/pb_ds/assoc_container.hpp> #include <ext/pb_ds/tree_policy.hpp> #include <immintrin.h> #ifndef DEBUG //#pragma GCC optimize("O3") //#pragma GCC target("avx2") #endif using namespace __gnu_pbds; using namespace __gnu_cxx; using namespace std; // using ld = long double; using ll = long long; using i128 = __int128; using ull = unsigned long long; using pll = std::pair<ll, ll>; using cmpl = std::complex<ld>; template<typename T> using oset = tree<T, null_type, std::less<T>, rb_tree_tag, tree_order_statistics_node_update>; constexpr ll MOD1 = 998244353; constexpr ll MOD = 1000000007; constexpr ll INV2 = 499122177; constexpr ld PI = 3.141592653589793; const ld eps = 1e-7; const ll K = 3; //const ll C = 200; std::mt19937 rnd(std::chrono::steady_clock::now().time_since_epoch().count()); ld START_TIME = clock(); void solve(){ ll n, q, s, t; std::cin >> n >> q >> s >> t; std::vector<ll> d(n), a; ll str; std::cin >> str; ll ans = 0; for (int i = 0; i < n; ++i) { ll x; std::cin >> x; d[i] = str - x; ans += t * (d[i] >= 0) * d[i]; ans -= s * (d[i] < 0) * -d[i]; str = x; } while (q--){ ll l, r, x; std::cin >> l >> r >> x; --l; if (l != n){ ans -= t * (d[l] >= 0) * d[l]; ans += s * (d[l] < 0) * -d[l]; d[l] -= x; ans += t * (d[l] >= 0) * d[l]; ans -= s * (d[l] < 0) * -d[l]; } if (r != n){ ans -= t * (d[r] >= 0) * d[r]; ans += s * (d[r] < 0) * -d[r]; d[r] += x; ans += t * (d[r] >= 0) * d[r]; ans -= s * (d[r] < 0) * -d[r]; } std::cout << ans << '\n'; } } signed main() { #ifdef DEBUG std::freopen("/home/anton/CLionProjects/untitled/input.txt", "r", stdin); #else // std::freopen("tri.in", "r", stdin); std::freopen("tri.out", "w", stdout); #endif std::cin.tie(nullptr)->std::ios_base::sync_with_stdio(false); int tt = 1; // std::cin >> tt; while (tt--) { solve(); } #ifdef DEBUG std::cerr << '\n'; ld TIME = (clock() - START_TIME) / CLOCKS_PER_SEC; std::cerr << "Time: " << TIME << '\n'; #endif }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...