Submission #310932

#TimeUsernameProblemLanguageResultExecution timeMemory
310932BenmathGarage (IOI09_garage)C++14
100 / 100
4 ms512 KiB
#include<bits/stdc++.h> using namespace std; int main(){ int n,m; cin>>n>>m; long long int a[n+1]; long long int b[m+1]; int vis[n+1]; for(int i=1;i<=n;i++){ cin>>a[i]; vis[i]=0; } int d1[m+1]; for(int i=1;i<=m;i++){ cin>>b[i]; d1[i]=-1; } long long int sum=0; queue<long long int >q; for(int i=0;i<(2*m);i++){ int x; cin>>x; if(x>0){ q.push(x); }else{ x=abs(x); vis[d1[x]]--; d1[x]=-1; } if(!q.empty()){ int a1=q.front(); int brojac=0; for(int j=1;j<=n;j++){ if(vis[j]==0 and brojac==0){ brojac++; sum=sum+a[j]*b[a1]; vis[j]++; d1[a1]=j; } } if(brojac!=0){ q.pop(); } } } cout<<sum; }
#Verdict Execution timeMemoryGrader output
Fetching results...