Submission #813589

#TimeUsernameProblemLanguageResultExecution timeMemory
813589danikoynovProgression (NOI20_progression)C++14
15 / 100
3070 ms4888 KiB
#include<bits/stdc++.h> #define endl '\n' using namespace std; typedef long long ll; void speed() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); } const int maxn = 3e5 + 10; int n, q; ll d[maxn]; void solve() { cin >> n >> q; for (int i = 1; i <= n; i ++) cin >> d[i]; for (int i = 1; i <= q; i ++) { int type, l, r, s, c; cin >> type >> l >> r; if (type == 1) { cin >> s >> c; for (int j = l; j <= r; j ++) d[j] += s + (j - l) * c; } else if (type == 2) { cin >> s >> c; for (int j = l; j <= r; j ++) d[j] = s + (j - l) * c; } else { int len = min(r - l, 1), ans = 0; for (int j = l + 2; j <= r; j ++) { if (d[j] - d[j - 1] == d[j - 1] - d[j - 2]) len ++; else { ans = max(ans, len); len = 1; } } ans = max(ans, len); cout << ans + 1 << endl; } /**for (int j = 1; j <= n; j ++) cout << d[j] << " "; cout << endl;*/ } } int main() { speed(); solve(); return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...