Submission #1069255

#TimeUsernameProblemLanguageResultExecution timeMemory
1069255n1kSjeckanje (COCI21_sjeckanje)C++17
0 / 110
1 ms344 KiB
#include <bits/stdc++.h> #if defined(LOCAL) #include "debug.cpp" #else #define debug(x...) 0 #endif // LOCAL using namespace std; using ll = long long; #define all(a) (a).begin(), (a).end() void solve(){ int n, q; cin >> n >> q; vector<ll> a(n); for(int i=0; i<n; i++) cin >> a[i]; auto get = [&](vector<ll> a){ ll ans = 0; for(int i=0, j; i<n; i++){ for(j=i; j<n-1 and a[i]<a[i+1] == a[j]<a[j+1]; j++){ } if(a[j-1]==a[j]) j--; if(j==n-2) j++; ans+=abs(a[i]-a[j]); i=j; } return ans; }; while(q--){ ll l, r, add; cin>>l>>r>>add; l--, r--; for(int i=l; i<=r;i++) a[i]+=add; ll ans = get(a); reverse(all(a)); ans = max(ans, get(a)); reverse(all(a)); cout<<ans<<endl; } } int main() { cin.tie(0)->sync_with_stdio(0); int t=1; //cin >> t; while(t--) solve(); }

Compilation message (stderr)

Main.cpp: In lambda function:
Main.cpp:22:27: warning: suggest parentheses around comparison in operand of '==' [-Wparentheses]
   22 |    for(j=i; j<n-1 and a[i]<a[i+1] == a[j]<a[j+1]; j++){
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...