제출 #1245602

#제출 시각아이디문제언어결과실행 시간메모리
1245602gmalex98Garage (IOI09_garage)C++20
40 / 100
1 ms584 KiB
#include <bits/stdc++.h>
using namespace std;

int main() {
	int n , m,res = 0;
	cin >> n >> m;
	priority_queue<int, vector<int>, greater<int>> pq;
	for (int i = 1; i <= n; ++i) {
        pq.push(i);
    }
    unordered_map<int,int>mp;
    vector<int>rates(n);
    for(int i = 0;i < n;++i)
    {
        cin >> rates[i];
    }
    vector<int>weight(m);
    for(int i = 0;i < m;++i)
    {
        cin >> weight[i];
    }
    for(int i = 0;i < 2*m;++i)
    {
        int j;
        cin >> j;
        if(j < 0)
        {
           pq.push(mp[abs(j)]);
        }
        else
        {
            res += rates[pq.top()-1] * weight[j-1];
            mp[j] = pq.top();
            pq.pop();
        }
    }
    cout << res << '\n';
}
#Verdict Execution timeMemoryGrader output
Fetching results...