제출 #120094

#제출 시각아이디문제언어결과실행 시간메모리
120094BoxworldGarage (IOI09_garage)C++14
100 / 100
3 ms512 KiB
#include <bits/stdc++.h>
using namespace std;
const int N=5100;
int x,n,m,r[N],w[N],a[N],ans=0;
priority_queue<int,vector<int>,greater<int> > pQ;//parklot
queue<int> wQ;//waiting
char s[N];
int main(){
	scanf("%d%d",&m,&n);
	for (int i=1;i<=m;i++)scanf("%d",&r[i]);
	for (int i=1;i<=n;i++)scanf("%d",&w[i]);
	for (int i=1;i<=m;i++)pQ.push(i);
	for (int i=1;i<=n*2;i++){
		scanf("%d",&x);
		if (x<0){
			x*=-1;
			if (wQ.empty())pQ.push(a[x]);
			else{int y=wQ.front();wQ.pop();a[y]=a[x];}
		}else{
			if (pQ.empty())wQ.push(x);
			else {a[x]=pQ.top();pQ.pop();}
		}
	}
	for (int i=1;i<=n;i++)ans+=r[a[i]]*w[i];
	printf("%d\n",ans);
}

컴파일 시 표준 에러 (stderr) 메시지

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