Submission #615398

#TimeUsernameProblemLanguageResultExecution timeMemory
615398HanksburgerGarage (IOI09_garage)C++17
100 / 100
2 ms356 KiB
#include <bits/stdc++.h> using namespace std; int a[105], c[105], b[2005]; queue<int> q; int main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n, m, ans=0; cin >> n >> m; for (int i=1; i<=n; i++) cin >> a[i]; for (int i=1; i<=m; i++) cin >> b[i]; for (int i=0; i<m*2; i++) { int x; cin >> x; if (x>0) { for (int j=1; j<=n; j++) { if (!c[j]) { ans+=a[j]*b[x]; c[j]=x; break; } if (j==n) q.push(x); } } else { for (int j=1; j<=n; j++) { if (c[j]==-x) { c[j]=0; break; } } if (!q.empty()) { int u=q.front(); q.pop(); for (int j=1; j<=n; j++) { if (!c[j]) { ans+=a[j]*b[u]; c[j]=u; break; } } } } } cout << ans; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...