Submission #141367

#TimeUsernameProblemLanguageResultExecution timeMemory
141367ansol4328Garage (IOI09_garage)C++11
100 / 100
3 ms380 KiB
#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)

garage.cpp: In function 'int main()':
garage.cpp:9:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d",&n);
     ~~~~~^~~~~~~~~
garage.cpp:10:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d",&m);
     ~~~~~^~~~~~~~~
garage.cpp:11:32: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     for(i=1 ; i<=n ; i++) scanf("%d",&s[i]);
                           ~~~~~^~~~~~~~~~~~
garage.cpp:12:32: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     for(i=1 ; i<=m ; i++) scanf("%d",&w[i]);
                           ~~~~~^~~~~~~~~~~~
garage.cpp:15:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         scanf("%d",&k);
         ~~~~~^~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...