172452025-06-07 21:05:07algoproGamecpp17Time limit exceeded 30/1002.585s1332 KiB
// UUID: 0e45b1bf-3d67-48f0-8701-35fee632b2aa
#include <bits/stdc++.h>
using namespace std;

int a[100001], q[100001];

int main() {
    ios::sync_with_stdio(false);cin.tie(NULL);
	int n, k;cin>>n>>k;
    for(int i=0;i<n;i++){
        cin>>a[i];
    }
    while(k--){
        int x;cin>>x;
        int ptr=0;
        for(int i=0;i<x;i++){
            ptr=max(ptr, a[i]);
            q[a[i]]++;
        }
        long long alice=ptr, bob=0;
        q[ptr]--;
        if(q[ptr]<=0){
            for(int i=ptr;i>=0 && q[i]<=0;i--){
                ptr=i;
            }
            ptr--;
        }
        for(int i=1;i<n;i++){
            if(i%2==0){
                if(i+x-1<n && a[i+x-1]>ptr){            
                    alice+=a[i+x-1];
                }else{
                    if(i+x-1<n) q[a[i+x-1]]++;
                    alice+=ptr;
                    q[ptr]--;
                    if(q[ptr]<=0){
                        for(int i=ptr;i>=0 && q[i]<=0;i--){
                            ptr=i;
                        }
                        ptr--;
                    }
                }
            }else{
                if(i+x-1<n && a[i+x-1]>ptr){
                    bob+=a[i+x-1];
                }else{
                    if(i+x-1<n) q[a[i+x-1]]++;
                    bob+=ptr;
                    q[ptr]--;
                    if(q[ptr]<=0){
                        for(int i=ptr;i>=0 && q[i]<=0;i--){
                            ptr=i;
                        }
                        ptr--;
                    }
                }
            }
        }
        cout<<alice-bob<<'\n';
    }
}
SubtaskSumTestVerdictTimeMemory
subtask110/10
1Accepted1ms316 KiB
2Accepted1ms316 KiB
subtask220/20
1Accepted1ms316 KiB
2Accepted1ms316 KiB
3Accepted2ms316 KiB
4Accepted4ms316 KiB
subtask30/70
1Accepted35ms460 KiB
2Accepted37ms656 KiB
3Accepted115ms496 KiB
4Accepted135ms512 KiB
5Accepted519ms1004 KiB
6Accepted1.031s820 KiB
7Accepted713ms820 KiB
8Accepted570ms564 KiB
9Accepted982ms1076 KiB
10Accepted1.348s1168 KiB
11Accepted874ms820 KiB
12Accepted2.374s1332 KiB
13Accepted1.559s1172 KiB
14Time limit exceeded2.585s1076 KiB