Submission #1177569

#TimeUsernameProblemLanguageResultExecution timeMemory
1177569AlgorithmWarriorGarage (IOI09_garage)C++20
100 / 100
1 ms328 KiB
#include <bits/stdc++.h> using namespace std; int parcare[105]; queue<int>coada; int n,m; int cost[105],kg[2005]; int total; void read(){ int i; cin>>n>>m; for(i=1;i<=n;++i) cin>>cost[i]; for(i=1;i<=m;++i) cin>>kg[i]; } void insert_car(int id){ int pos; for(pos=1;parcare[pos];++pos); if(pos<=n){ parcare[pos]=id; total+=kg[id]*cost[pos]; } else coada.push(id); } void erase_car(int id){ int pos; for(pos=1;parcare[pos]!=id;++pos); parcare[pos]=0; if(!coada.empty()){ insert_car(coada.front()); coada.pop(); } } void process_queries(){ int i; for(i=1;i<=2*m;++i){ int id; cin>>id; if(id>0) insert_car(id); else erase_car(-id); } } int main() { read(); process_queries(); cout<<total; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...