Submission #851649

# Submission time Handle Problem Language Result Execution time Memory
851649 2023-09-20T10:22:37 Z abcvuitunggio Garage (IOI09_garage) C++17
100 / 100
1 ms 348 KB
#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 time Memory Grader output
1 Correct 1 ms 344 KB Output is correct
2 Correct 0 ms 344 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 1 ms 348 KB Output is correct
5 Correct 1 ms 344 KB Output is correct
6 Correct 0 ms 344 KB Output is correct
7 Correct 0 ms 344 KB Output is correct
8 Correct 0 ms 348 KB Output is correct
9 Correct 1 ms 348 KB Output is correct
10 Correct 0 ms 344 KB Output is correct
11 Correct 0 ms 344 KB Output is correct
12 Correct 0 ms 348 KB Output is correct
13 Correct 0 ms 344 KB Output is correct
14 Correct 1 ms 344 KB Output is correct
15 Correct 1 ms 344 KB Output is correct
16 Correct 1 ms 344 KB Output is correct
17 Correct 1 ms 344 KB Output is correct
18 Correct 1 ms 344 KB Output is correct
19 Correct 1 ms 344 KB Output is correct
20 Correct 1 ms 344 KB Output is correct