题目大意 运用两个栈的push和pop操作使得一个序列单调递增且操作字典序最小。$n\leq 1000$。 题解 本题我们要尝试运用“瞪眼法”,也就是推样例。我们显然要数字尽可能地推入第一个栈。那么问题就是:怎样的两个数字不可以在同一个栈中呢?这样的效果是:当一个数字a想要出栈时,其上端有个被他大的 ...
分类:
编程语言 时间:
2018-10-14 01:48:45
阅读次数:
171
题目传送门 传送门I 传送门II 题目大意 双栈排序,问最小字典序操作序列。 题目传送门 传送门I 传送门II 题目大意 双栈排序,问最小字典序操作序列。 不能发现两个数$a_{j}, a_{k}\ \ (j < k)$不能放在同一个栈的充分必要条件时存在一个$i$使得$j < k < i$且$a_ ...
分类:
编程语言 时间:
2018-10-13 02:29:27
阅读次数:
164
题目链接 https://www.luogu.org/problemnew/show/P1155 一开始我还以为能直接模拟 ,太天真了...写了好久对了3个点...看了题解之后恍然大悟,先二分图匹配一下确定每个点在哪个栈里头再模拟会轻松很多。可怎么建边呢? 我们先从单栈排序开始: 可以的出的是,对于 ...
分类:
编程语言 时间:
2018-10-12 21:08:28
阅读次数:
158
题目描述 Tom最近在研究一个有趣的排序问题。如图所示,通过2个栈S1和S2,Tom希望借助以下4种操作实现将输入序列升序排序。 操作aaa 如果输入序列不为空,将第一个元素压入栈S1? 操作b 如果栈S1不为空,将S1栈顶元素弹出至输出序列 操作c 如果输入序列不为空,将第一个元素压入栈S2? 操 ...
分类:
编程语言 时间:
2018-09-06 00:12:02
阅读次数:
328
题目大意: 给定n和一串数字,这串数字是一个1~n的排列。现在要用两个栈给这些数字排序。首先先判断是否有解,有解的话再输出字典序最小的方案: 入栈1,输出a,出栈1,输出b 入栈2,输出c,出栈2,输出d 分析: 首先必然要先考虑是否有解。对于没有解的情况,必然是当到了某一个数x0时,栈1,栈2队首 ...
分类:
编程语言 时间:
2018-05-13 13:53:19
阅读次数:
204
想想在NOIP前总得做做真题吧,于是长达一个月的刷题开始了 涉及2008-2016年大部分题目 NOIP [2008] 4/4 1、传纸条:清真的三维DP 2、笨小猴:字符串模拟 3、火柴棒等式:打表+循环 4、双栈排序:贪心+栈 NOIP [2009] 3/4 2、Hankson的趣味题:数论,g ...
分类:
其他好文 时间:
2017-11-08 22:17:44
阅读次数:
112
快考试了,把我以前写过的题回顾一下. Noip2007 树网的核:floyd,推出性质,暴力.Noip2008 笨小猴:模拟Noip2008 火柴棒等式:枚举Noip2008 传纸条:棋盘dpNoip2008 双栈排序:将复杂条件转化为简单约束,二分图染色判断可行性,模拟.Noi2010 能量采集: ...
分类:
其他好文 时间:
2017-11-07 23:58:52
阅读次数:
365
一、栈/队列 栈模拟、括号匹配,单调栈 noip:双栈排序 二、并查集 注意fa[]数组的初始值和路径压缩 Noip:关押罪犯 三、堆 noip:合并果子 #include<iostream> #include<cstdio> #include<cstring> #define N 1000009 ...
分类:
其他好文 时间:
2017-11-06 23:07:36
阅读次数:
352
1.Luogu P1155 双栈排序 Code: 2.Luogu P1099 树网的核 Code: <not_completed> ...
分类:
其他好文 时间:
2017-11-02 13:09:10
阅读次数:
184
题目就是栈中存的整数,对其做一个排序。哎当时没写出来。。。。importjava.util.Stack;
publicclass栈排序{
publicstaticvoidmain(String[]args){
Stack<Integer>s=newStack<Integer>();
s.push(4);
s.push(6);
s.push(1);
s.push(3);
s.push(2);
/..
分类:
编程语言 时间:
2017-10-26 23:05:41
阅读次数:
300