172562025-06-08 11:56:41algoproGamecpp17Időlimit túllépés 30/1002.588s4376 KiB
// UUID: e6c0199c-49f5-44c2-9770-21bb310e4ef5
#include<bits/stdc++.h>

using namespace std;

long long n,m,k,l,i,j,a,b,res,mx,ans,t,c,d[200005],g[200005],f[200005];
string s;
vector<int>v[100005];

main(){
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cin>>n>>m;

for(i=1;i<=n;i++){
    cin>>d[i];
}

for(i=0;i<m;i++){
    cin>>g[i];
}

for(i=0;i<m;i++){
    mx=0;
    for(j=1;j<=g[i];j++){
        f[d[j]]++;
        mx=max(mx,d[j]);
    }
    a=mx;b=0;
    f[mx]--;
                while(f[mx]==0 && mx>0){
                mx--;
            }
    for(j=g[i]+1;j<=n+g[i];j++){
        if(d[j]>=mx)
            if(j%2==g[i]%2) a+=d[j]; else b+=d[j];
        else
        {
            f[d[j]]++;
            while(f[mx]==0 && mx>0){
                mx--;
            }
            f[mx]--;
            if(j%2==g[i]%2) a+=mx; else b+=mx;
        }
    }
    cout<<a-b<<endl;
}

}

RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask110/10
1Elfogadva3ms2612 KiB
2Elfogadva3ms2612 KiB
subtask220/20
1Elfogadva3ms2612 KiB
2Elfogadva4ms2612 KiB
3Elfogadva4ms2612 KiB
4Elfogadva7ms2612 KiB
subtask30/70
1Elfogadva39ms2808 KiB
2Elfogadva41ms3016 KiB
3Elfogadva127ms2868 KiB
4Elfogadva148ms2868 KiB
5Elfogadva555ms3636 KiB
6Elfogadva1.103s3380 KiB
7Elfogadva763ms3380 KiB
8Elfogadva754ms3476 KiB
9Elfogadva1.055s4148 KiB
10Elfogadva1.45s4148 KiB
11Elfogadva1.128s3608 KiB
12Időlimit túllépés2.549s4188 KiB
13Elfogadva1.677s4148 KiB
14Időlimit túllépés2.588s4376 KiB