NC14893 栈和排序
Posted cq.tiancx
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NC14893 栈和排序相关的知识,希望对你有一定的参考价值。
题目: NC14893 栈和排序 ,哈哈,我们今天来看一道比较简单的数据结构题嘛,这是选自牛客上的一道题,好了,我们一起来看看题意吧:
考虑到直接复制题目,或者截屏的方式不是很方便阅读,我就把直接题目链接放下面!
题目传送门: NC14893 栈和排序
思路
:
维护一个后缀最大值数组,就比较方便求了,具体的我们直接看代码!
我们来看看成功AC的代码吧:
#include<bits/stdc++.h>
using namespace std;
const int N=1000010;
int n;
int maxn[N],a[N];
stack<int> st;
int main()
cin>>n;
for(int i=1;i<=n;i++) cin>>a[i];
for(int i=n;i>=1;i--) maxn[i]=max(a[i],maxn[i+1]);//维护后缀最大值
for(int i=1;i<=n;i++)
st.push(a[i]);
while(!st.empty()&&st.top()>maxn[i+1])
cout<<st.top()<<" "; st.pop();
while(!st.empty())//处理剩下的
cout<<st.top()<<" "; st.pop();
return 0;
谢谢你的阅读
,由于作者水平有限,难免有不足之处,若读者发现问题,还请批评,在留言区留言或者私信告知,我一定会尽快修改的。若各位大佬有什么好的解法,或者有意义的解法都可以在评论区展示额,万分谢谢。
写作不易,望各位老板点点赞,加个关注!
以上是关于NC14893 栈和排序的主要内容,如果未能解决你的问题,请参考以下文章
930. 和相同的二元子数组/238. 除自身以外数组的乘积/1262. 可被三整除的最大和/NC90 设计getMin功能的栈/NC67连续子数组的最大和/NC115 栈和排序
Codeforces1548 C. The Three Little Pigs(组合数学+dp)
LeetCode 451. 根据字符出现频率排序 / 645. 错误的集合 / 726. 原子的数量 / NC52 括号序列 / NC102 最近公共祖先 / NC78 反转链表