蒟蒻求助 用栈写的样例都没过
  • 板块P1165 日志分析
  • 楼主Jiang_
  • 当前回复0
  • 已保存回复0
  • 发布时间2020/12/10 20:17
  • 上次更新2023/11/5 06:18:58
查看原帖
蒟蒻求助 用栈写的样例都没过
238744
Jiang_楼主2020/12/10 20:17
#include <bits/stdc++.h>
using namespace std;
int n,x,b,max1=0,T[200005];
int main()
{
	stack<int> a;
//	定义stack< int > s;
//	s.empty();如果栈为空则返回true, 否则返回false
//	s.size();返回栈中元素的个数
//	s.top();返回栈顶元素, 但不删除该元素
//	s.pop();弹出栈顶元素, 但不返回其值
//	s.push();将元素压入栈顶 
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		max1=0;
		cin>>x;
		if(x==0)
		{
			cin>>b;
			a.push(b);
		}
		else if(x==1)	a.pop();
		else
		{
			int r=a.size();
			if(a.empty())	cout<<0;
			else
			{
				for(int i=r;i>=1;i--)
				{
					int y=a.top();
					if(y>=max1)
					{
						max1=y;
						T[i]=y;
						a.pop();
					}
				}
				cout<<max1<<endl;
				for(int i=1;i<=r;i++)	a.push(T[i]);
			}
		}
	}
	return 0;
}

2020/12/10 20:17
加载中...