Submission #1280647

#TimeUsernameProblemLanguageResultExecution timeMemory
1280647bnijaamaaAddk (eJOI21_addk)C++20
36 / 100
643 ms1114112 KiB
#include <bits/stdc++.h>

#define nn '\n'
#define int long long
#define pb push_back
#define all(x) x.begin() + 1, x.end()
#define rall(x) x.rbegin(), x.rend()
#define vec std::vector
using namespace std;
signed main() {
    ios_base::sync_with_stdio(false);
    cin.tie(nullptr);
    int n, k;
    cin >> n >> k;
    vec<int> a(n + 1), p(n + 1);
    for (int i = 1; i <= n; i++) {
        cin >> a[i];
        p[i] = p[i - 1] + a[i];
    }
    vec<vec<int>> v(n + 1);
    for (int m = 1; m <= n; m++) {
        v[m].resize(n - m + 3);
        for (int i = 1; i <= n - m + 1; i++) {
            int sum = p[i + m - 1] - p[i - 1];
            v[m][i] = v[m][i - 1] + sum;
        }
    }
    int q;
    cin >> q;
    while (q--) {
        int type;
        cin >> type;
        if (type == 1) {
            int k;
            cin >>k;
        } else {
            int l, r, m;
            cin >> l >> r >> m;
            if (r - l + 1 < m) {
                cout << 0 << nn;
            } else {
                cout << v[m][r - m + 1] - v[m][l - 1] << nn;
            }
        }
    }
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...