Submission #1180548

#TimeUsernameProblemLanguageResultExecution timeMemory
1180548vladkonovalAddk (eJOI21_addk)C++20
36 / 100
2092 ms2508 KiB
#include <bits/stdc++.h>
using namespace std;
#define endl '\n'
using ll = long long;
ll n,k,o,q,l,r,m,type,a[100007],i,sum,id[17],dp[100007];
int main() {
    ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
    cin>>n>>k;
    for (i=1;i<=n;i++) cin>>a[i];
    cin>>q;
    for (i=1;i<=n;i++) dp[i] = dp[i-1]+a[i];
    while (q--) {
        cin>>type;
        sum = 0;
        if (type==2) {
            cin>>l>>r>>m;
            for (i=l;i<=r;i++) {
                if (i+m-1>r) break;
                sum+=dp[i+m-1]-dp[i-1];
            }
            cout<<sum<<endl;
        }
        else {
            for (i=1;i<=k;i++) {
                cin>>id[i];
                if (i!=1) swap(a[id[i]],a[id[i-1]]);
            }
            for (i=1;i<=n;i++) dp[i] = dp[i-1]+a[i];
        }
    }
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...