Pagini recente » Cod sursa (job #2451891) | Cod sursa (job #2524640) | Cod sursa (job #1946851) | Cod sursa (job #1915189) | Cod sursa (job #543175)
Cod sursa(job #543175)
#include<cstdio>
#define L 300002
using namespace std;
int n,c;
int a[L];
int divide(int,int);
void quick(int,int);
void quick(int p, int q)
{
int m=divide(p,q);
if(m-1>p) quick(p,m-1);
if(m+1<q) quick(m+1,q);
}
int divide(int p,int q)
{
int st=p, dr=q, x=a[p];
while(st<dr)
{
while(st<dr && a[dr]>=x) dr--;
a[st]=a[dr];
while(st<dr && a[st]<=x) st++;
a[dr]=a[st];
}
a[st]=x;
return st;
}
void citeste()
{
freopen("sdo.in","r",stdin);
scanf("%d%d",&n,&c);
for(int i=1;i<=n;i++) scanf("%d",&a[i]);
fclose(stdin);
}
void afiseaza()
{
freopen("sdo.out","w",stdout);
printf("%d",a[c]);
fclose(stdout);
}
int main()
{
citeste();
quick(1,n);
afiseaza();
return 0;
}