import java.util.Scanner;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
/*
* 输入n个整数 升序输出其中最小的k个 第一行输入n k 第二行输入n个整数
* 输出 在一行中输出最小的k个整数*/
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int k = scanner.nextInt();
List<Integer> numberList = new ArrayList<>();
/*while (scanner.hasNextInt()){
numberList.add(scanner.nextInt());
}*///只适用于有终止条件时使用 否者会一直等待控制台 数字输入
// 若有明确的结束边界 可以使用for循环来进行数据录入
// 若没有边界 使用nextLine整行读取 split分隔字符串
for (int i = 0; i < n; i++) {
numberList.add(scanner.nextInt());
}
//对numberList进行升序排序 并输出前k个整数
for (int i = 0; i < numberList.size() - 1; i++) {
for (int j = 0; j < numberList.size() - i - 1; j++) {
if (numberList.get(j) > numberList.get(j + 1)) {
// 交换相邻元素
int temp = numberList.get(j);
numberList.set(j, numberList.get(j + 1));
numberList.set(j + 1, temp);
}
}
}
for (int i = 0; i < k; i++) {
System.out.print(numberList.get(i)+" ");
}
}
}