Submission #868478

#TimeUsernameProblemLanguageResultExecution timeMemory
868478WarinchaiSafety (NOI18_safety)C++14
49 / 100
39 ms3636 KiB
#include<bits/stdc++.h> #pragma GCC optimize("O3","unroll-loops") #pragma GCC target ("avx2") using namespace std; priority_queue<long long>pql; priority_queue<long long,vector<long long>,greater<long long> >pqr; long long lzl,lzr; int a,b,c; long long ans=0; int main(){ ios_base::sync_with_stdio(false); cin.tie(0); int n,h; cin>>n>>h; for(int i=0;i<n;i++){ cin>>a; b=a-lzl,c=a-lzr; if(i>0&&a<pql.top()+lzl){ //cout<<"left\n"; pql.push(b); pql.push(b); ans+=abs(b-pql.top()); pqr.push(pql.top()+lzl-lzr); pql.pop(); }else if(i>0&&a>pqr.top()+lzr){ //cout<<"right\n"; pqr.push(c); pqr.push(c); ans+=abs(c-pqr.top()); pql.push(pqr.top()+lzr-lzl); pqr.pop(); }else{ //cout<<"middle\n"; pql.push(b); pqr.push(c); } lzl-=h; lzr+=h; //cout<<ans<<" "; } cout<<ans; }
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...