# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
141367 | ansol4328 | Garage (IOI09_garage) | C++11 | 3 ms | 380 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include<stdio.h>
int n, m, s[102], w[2002];
int sum, q[2002], r=0, f=0, check[102], num[2002];
int main()
{
int i, j, k;
scanf("%d",&n);
scanf("%d",&m);
for(i=1 ; i<=n ; i++) scanf("%d",&s[i]);
for(i=1 ; i<=m ; i++) scanf("%d",&w[i]);
for(i=1 ; i<=m*2 ; i++)
{
scanf("%d",&k);
if(k>0)
{
for(j=1 ; j<=n ; j++) if(check[j]==0) break;
if(j>n) q[++r]=k;
else check[j]=k, num[k]=j, sum+=(w[k]*s[j]);
}
else if(k<0)
{
k*=-1;
check[num[k]]=0;
if(f<r)
{
f++;
for(j=1 ; j<=n ; j++) if(check[j]==0) break;
check[j]=q[f], num[q[f]]=j, sum+=(w[q[f]]*s[j]);
}
}
}
printf("%d",sum);
return 0;
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |