#include<iostream>usingnamespace std;constint N =100010;int q[N];voidquick_sort(int q[],int l,int r){if(l >= r)return;int i = l -1, j = r +1, x = q[l + r >>1];while(i < j){do i ++;while(q[i]< x);do j --;while(q[j]> x);if(i < j)swap(q[i], q[j]);}quick_sort(q, l, j);quick_sort(q, j +1, r);}intmain(){int n;scanf("%d",&n);for(int i =0; i < n; i ++)scanf("%d",&q[i]);quick_sort(q,0, n -1);for(int i =0; i < n; i ++)printf("%d ", q[i]);return0;}
#include<iostream>usingnamespace std;constint N =100010;int q[N];intquick_sort(int q[],int l,int r,int k){if(l >= r)return q[l];int i = l -1, j = r +1, x = q[l + r >>1];while(i < j){do i ++;while(q[i]< x);do j --;while(q[j]> x);if(i < j)swap(q[i], q[j]);}if(j - l +1>= k)returnquick_sort(q, l, j, k);elsereturnquick_sort(q, j +1, r, k -(j - l +1));}intmain(){int n, k;scanf("%d%d",&n,&k);for(int i =0; i < n; i ++)scanf("%d",&q[i]);
cout <<quick_sort(q,0, n -1, k)<< endl;return0;}