AcWing 828. 模拟栈
Posted MangataTS
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AcWing 828. 模拟栈相关的知识,希望对你有一定的参考价值。
题目连接
https://www.acwing.com/problem/content/830/
思路
我们直接开一个a数组,然后用一个整数top表示栈顶,0的时候表示为栈空,然后不断模拟就好啦
#include<bits/stdc++.h>
using namespace std;
//----------------自定义部分----------------
#define ll long long
#define mod 1000000009
#define endl "\\n"
#define PII pair<int,int>
int dx[4]=0,-1,0,1,dy[4]=-1,0,1,0;
ll ksm(ll a,ll b)
ll ans = 1;
for(;b;b>>=1LL)
if(b & 1) ans = ans * a % mod;
a = a * a % mod;
return ans;
ll lowbit(ll x)return -x & x;
const int N = 2e6+10;
//----------------自定义部分----------------
int n,m,q,a[N],top;
int main()
cin>>m;
string op;
for(int i = 1;i <= m; ++i)
cin>>op;
if(op == "push")
int x;
cin>>x;
a[++top] = x;
else if(op == "pop")
if(top) top--;
else if(op == "empty")
if(!top) cout<<"YES"<<endl;
else cout<<"NO"<<endl;
else if(op == "query")
if(top) cout<<a[top]<<endl;
return 0;
以上是关于AcWing 828. 模拟栈的主要内容,如果未能解决你的问题,请参考以下文章