제출 #1002837

#제출 시각아이디문제언어결과실행 시간메모리
1002837TobGarage (IOI09_garage)C++14
100 / 100
1 ms452 KiB
#include <bits/stdc++.h> #define ll long long #define F first #define S second #define all(x) x.begin(), x.end() #define pb push_back #define FIO ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0) using namespace std; typedef pair <ll, ll> pii; int n, m; int r[107], wh[2007], w[2007]; int main () { FIO; cin >> n >> m; deque <int> q; set <int> s; for (int i = 1; i <= n; i++) { cin >> r[i]; s.insert(i); } for (int i = 1; i <= m; i++) { cin >> w[i]; } int res = 0; for (int i = 1; i <= 2*m; i++) { int x; cin >> x; if (x > 0) { if (s.empty()) q.pb(x); else { int y = *s.begin(); s.erase(y); res += w[x] * r[y]; wh[x] = y; } } else { int y = wh[-x]; s.insert(y); if (!q.empty()) { x = q.front(); s.erase(y); res += w[x] * r[y]; wh[x] = y; q.pop_front(); } } } cout << res; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...