최소 범위 부분집합
시간 제한2초메모리 제한1024 MB
n개의 수에서 k개를 골라 선택한 수들의 최댓값과 최솟값 차이가 가장 작도록 하고, 그 부분집합을 출력합니다.
문제
인재 학교에서 울버린은 자비에르 교수의 수업을 자주 힘들어했다. 엄격한 교수는 학생들에게 뛰어난 머리 회전을 요구했고, 학생들의 사고력을 시험하려고 문제를 자주 냈다. 그중 한 문제는 다음과 같았다. 개의 수로 이루어진 집합에서 크기가 인 부분집합을 고르되, 그 부분집합의 최댓값과 최솟값의 차이가 가능한 한 작아지도록 해야 한다.
울버린은 이 문제를 머릿속으로 풀기 싫어서 프로그램을 짜기로 했다. 최근 옛 프로그램 보관함을 살펴보던 그는 이 문제의 구현에 오류가 있다는 것을 발견했다. 프로그램을 다시 짤 시간이 없어서 도움을 청한다. 마그네토가 또다시 지구를 공격한다면, 울버린이 달리 누구를 찾아가겠는가.
입력
첫 줄에 두 정수 과 가 주어진다 (). 은 집합의 원소 개수이고, 는 고를 부분집합의 크기이다. 둘째 줄에는 개의 정수 가 주어진다 ().
출력
원래 집합에 있던 수 중에서 개를 골라 공백으로 구분하여 출력한다. 골라낸 수들의 최댓값과 최솟값의 차이는 가능한 한 작아야 한다.