栈排序

提交数: 55, 通过率: 40%, 平均分: 47.27

题目描述:

给定一个序列,序列由N个数字组字 。另外再给一个大小容量为M的栈, 请问利用这个栈,数字按它们的出栈顺序进行排列,会得到一个新的序列。 这样的序列会有很多种, 请输出所有新序列中第一个元素最小的序列 (若第一个元素最小的序列有多个,则令第二个尽可能小;若仍有多个,则令第三个最小,以此类推)。

输入格式:

第一行,两个数n,m 第二行n个数,为序列中n个元素的值 m<=n<=10000,数字大小均在2*10^9以内。

输出格式:

输出n个数,为满足要求的序列。

样例输入:

样例1:
6 3
5
2
3
8
7
4

样例2:
20 3
6
6
6
9
5
9
6
10
4
2
1
3
6
9
10
3
4
1
4
7

样例输出:

样例1:
2 3 5 4 7 8

样例2:
6 6 5 9 6 6 4 2 1 3 6 9 10 3 4 1 4 7 10 9
时间限制: 1000ms
空间限制: 256MB

来源: 原创