Submission #851649

#TimeUsernameProblemLanguageResultExecution timeMemory
851649abcvuitunggioGarage (IOI09_garage)C++17
100 / 100
1 ms348 KiB
#include <bits/stdc++.h> using namespace std; int n,m,r[101],w[2001],p[2001],res,x; queue <int> q; priority_queue <int, vector <int>, greater <int>> pq; void park(int i){ if (pq.empty()){ q.push(i); return; } res+=r[pq.top()]*w[i]; p[i]=pq.top(); pq.pop(); } int main(){ ios_base::sync_with_stdio(NULL);cin.tie(nullptr); cin >> n >> m; for (int i=1;i<=n;i++){ cin >> r[i]; pq.push(i); } for (int i=1;i<=m;i++) cin >> w[i]; for (int i=1;i<=m*2;i++){ cin >> x; if (x>0){ park(x); continue; } pq.push(p[-x]); if (!q.empty()){ park(q.front()); q.pop(); } } cout << res; }
#Verdict Execution timeMemoryGrader output
Fetching results...