Submission #1002837

# Submission time Handle Problem Language Result Execution time Memory
1002837 2024-06-19T20:27:01 Z Tob Garage (IOI09_garage) C++14
100 / 100
1 ms 452 KB
#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 time Memory Grader output
1 Correct 1 ms 348 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 0 ms 348 KB Output is correct
7 Correct 0 ms 348 KB Output is correct
8 Correct 1 ms 348 KB Output is correct
9 Correct 0 ms 348 KB Output is correct
10 Correct 0 ms 348 KB Output is correct
11 Correct 0 ms 452 KB Output is correct
12 Correct 0 ms 348 KB Output is correct
13 Correct 0 ms 348 KB Output is correct
14 Correct 0 ms 348 KB Output is correct
15 Correct 1 ms 344 KB Output is correct
16 Correct 1 ms 348 KB Output is correct
17 Correct 1 ms 348 KB Output is correct
18 Correct 1 ms 348 KB Output is correct
19 Correct 1 ms 348 KB Output is correct
20 Correct 1 ms 348 KB Output is correct