제출 #623440

#제출 시각아이디문제언어결과실행 시간메모리
623440nekiGarage (IOI09_garage)C++14
100 / 100
2 ms440 KiB
#include <bits/stdc++.h> #define ll long long #define vc vector using namespace std; int main() { ll n, m;cin >> n >> m; vc<ll> rate(n+1); for(ll i=1;i<=n;++i) cin>> rate[i]; vc<ll> w(m+1); for(ll i=1;i<=m;++i) cin >>w[i]; ll ans=0; queue<ll> q; set<ll> prosti; for(ll i=1;i<=n;++i) prosti.insert(i); vc<ll> plac(m+1); for(ll i=1;i<=2 * m;++i){ ll t;cin >> t; if(t>0) q.push(t); if(t<0) prosti.insert(plac[-t]); while(prosti.size() and q.size()){ ll u=q.front();q.pop(); plac[u]=*prosti.begin();prosti.erase(prosti.begin()); ans+=rate[plac[u]] * w[u]; } } cout << ans << endl; }
#Verdict Execution timeMemoryGrader output
Fetching results...