货车
原题链接https://nuoyanli.com/contest/32/problem/M
这道题考察栈的使用,先将A仓库的货物全部压入栈中,然后根据后续操作进行放入或拿出。
#include<algorithm>
#include<cmath>
#include<cstdlib>
#include<cstring>
#include<cstdio>
#include<iostream>
#include<stack>
using namespace std;
int main()
{
long long n,m,i;
scanf("%lld %lld",&n,&m);
stack<long long>q;
for(i=1; i<=n; i++)
{
q.push(i);
}
long long a,b;
while(m--)
{
scanf("%lld",&a);
if(a==1)
{
scanf("%lld",&b);
q.push(b);
}
else if(a==2)
{
q.pop();
}
}
long long s;
if(q.top()==-1)
{
printf("NO");
}
else
{
s=q.top();
printf("%lld",s);
q.pop();
if(q.top()==-1)
{
return 0;
}
while(!q.empty())
{
s=q.top();
q.pop();
printf(" %lld",s);
}
}
return 0;
}