Submission #868463

#TimeUsernameProblemLanguageResultExecution timeMemory
868463WarinchaiSafety (NOI18_safety)C++14
100 / 100
53 ms5492 KiB
#include<bits/stdc++.h> #define int long long using namespace std; priority_queue<int>pql; priority_queue<int,vector<int>,greater<int> >pqr; int lzl,lzr; int ans=0; int32_t main(){ ios_base::sync_with_stdio(false); cin.tie(0); int n,h; cin>>n>>h; for(int i=0;i<n;i++){ int a; cin>>a; if(i>0&&a<pql.top()+lzl){ //cout<<"left\n"; pql.push(a-lzl); pql.push(a-lzl); ans+=abs(a-pql.top()-lzl); pqr.push(pql.top()+lzl-lzr); pql.pop(); }else if(i>0&&a>pqr.top()+lzr){ //cout<<"right\n"; pqr.push(a-lzr); pqr.push(a-lzr); ans+=abs(a-pqr.top()-lzr); pql.push(pqr.top()+lzr-lzl); pqr.pop(); }else{ //cout<<"middle\n"; pql.push(a-lzl); pqr.push(a-lzr); } 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...