出栈序列

题目描述

给定一个由n个元素构成的序列,你需要将其中的元素按顺序压入一个大小为c的栈并弹出。元素按它们的出栈顺序进行排列,会得到一个新的序列。我们知道,这样的序列会有很多种,请输出所有新序列中第一个元素最小的序列(若第一个元素最小的序列有多个,则令第二个尽可能小;若仍有多个,则令第三个最小,以此类推)。

输入输出格式

输入格式


第一行,两个数n,c 第二行n个数,为序列中n个元素的值

输出格式


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

输入输出样例

输入样例 #1

6 3
5 2 3 8 7 4

输出样例 #1

2 3 5 4 7 8

说明

对于40%的数据,n<=12 对于100%的数据,c<=n<=10000,元素大小均在2\*10^9以内。