Submission #776931

#TimeUsernameProblemLanguageResultExecution timeMemory
776931mdubGarage (IOI09_garage)C++14
100 / 100
2 ms340 KiB
#include <bits/stdc++.h> using namespace std; int main () { int n, m; cin >> n >> m; vector<int> a(n); for (int i = 0; i < n; i++) { cin >> a[i]; } vector<int> b(m); for (int i =0 ; i < m; i++) { cin >> b[i]; } queue<int> q; vector<int> departures(m); vector<bool> used(m, false); int ans = 0; for (int i = 0; i < 2*m; i++) { int num; cin >> num; if (num > 0) { q.push(num-1); } else { used[departures[abs(num)-1]] = false; } for (int j = 0; j < n; j++) { if (!used[j]) { if (q.size()) { used[j] = true; ans += a[j] * b[q.front()]; departures[q.front()] = j; q.pop(); } } } } cout << ans << '\n'; }
#Verdict Execution timeMemoryGrader output
Fetching results...