Submission #921540

#TimeUsernameProblemLanguageResultExecution timeMemory
921540josanneo22Garage (IOI09_garage)C++17
100 / 100
1 ms360 KiB
#pragma warning(suppress : 4996) #include <bits/stdc++.h> using namespace std; using i64 = long long; #define L(i,j,k) for(int i=(j);i<=(k);++i) #define R(i,j,k) for(int i=(j);i>=(k);--i) #define all(x) x.begin(),x.end() #define me(x,a) memset(x,a,sizeof(x)) int main() { ios::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr); int N, M; cin >> N >> M; vector<int> r(N); L(i, 0, N - 1) cin >> r[i]; vector<int> w(M); L(i, 0, M - 1) cin >> w[i]; vector<int> meow(M + 1, -1); i64 ans = 0; set<int> S; L(i, 0, N - 1) S.insert(i); queue<int> Q; L(i, 0, 2 * M - 1) { int x; cin >> x; if (x > 0) { x--; Q.push(x); } else { x = -x; x--; ans += r[meow[x]] * w[x]; S.insert(meow[x]); meow[x] = -1; } if (Q.size() && S.size()) { int nw = Q.front(); Q.pop(); int pos = *S.begin(); meow[nw] = pos; S.erase(S.begin()); } } cout << ans << '\n'; }

Compilation message (stderr)

garage.cpp:1: warning: ignoring '#pragma warning ' [-Wunknown-pragmas]
    1 | #pragma warning(suppress : 4996)
      |
#Verdict Execution timeMemoryGrader output
Fetching results...