Submission #168964

# Submission time Handle Problem Language Result Execution time Memory
168964 2019-12-17T10:05:37 Z dolphingarlic Garage (IOI09_garage) C++14
100 / 100
3 ms 504 KB
#include <bits/stdc++.h>
#pragma GCC Optimize("O3")
#define FOR(i, x, y) for (int i = x; i < y; i++)
#define MOD 1000000007
typedef long long ll;
using namespace std;

priority_queue<int> pq;
int r[100], w[2001], curr[2001];

int main() {
    iostream::sync_with_stdio(false);
    cin.tie(0);
    int n, m;
    cin >> n >> m;
    FOR(i, 0, n) {
        cin >> r[i];
        pq.push(-i);
    }

    int ans = 0;
    FOR(i, 1, m + 1) cin >> w[i];

    queue<int> q;
    FOR(i, 0, 2 * m) {
        int c;
        cin >> c;
        if (c > 0) q.push(c);
        else pq.push(-curr[-c]);

        while (pq.size() && q.size()) {
            curr[q.front()] = -pq.top();
            ans += w[q.front()] * r[-pq.top()];
            pq.pop(); q.pop();
        }
    }

    cout << ans;
    return 0;
}

Compilation message

garage.cpp:2:0: warning: ignoring #pragma GCC Optimize [-Wunknown-pragmas]
 #pragma GCC Optimize("O3")
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Output is correct
2 Correct 2 ms 376 KB Output is correct
3 Correct 2 ms 380 KB Output is correct
4 Correct 2 ms 376 KB Output is correct
5 Correct 2 ms 452 KB Output is correct
6 Correct 2 ms 376 KB Output is correct
7 Correct 2 ms 376 KB Output is correct
8 Correct 2 ms 376 KB Output is correct
9 Correct 2 ms 376 KB Output is correct
10 Correct 2 ms 376 KB Output is correct
11 Correct 2 ms 376 KB Output is correct
12 Correct 2 ms 504 KB Output is correct
13 Correct 2 ms 376 KB Output is correct
14 Correct 2 ms 376 KB Output is correct
15 Correct 2 ms 376 KB Output is correct
16 Correct 2 ms 376 KB Output is correct
17 Correct 2 ms 376 KB Output is correct
18 Correct 3 ms 376 KB Output is correct
19 Correct 2 ms 376 KB Output is correct
20 Correct 3 ms 376 KB Output is correct