Pagini recente » Cod sursa (job #1667433) | Cod sursa (job #3240301) | Cod sursa (job #1259490) | Cod sursa (job #653750) | Cod sursa (job #1017039)
#include <fstream>
using namespace std;
ifstream cin("sdo.in");
ofstream cout("sdo.out");
long n, v[3000001], i, k;
int stat(long v[], long st, long dr, long k)
{
long i=st, j=dr;
if(i==j) return v[i];
long piv = v[(st+dr)/2];
while (i <= j)
{
while (v[i] < piv) i++;
while (v[j] > piv) j--;
if (i <= j)
{
swap(v[i],v[j]);
i++;
j--;
}
}
if (k <= j) return stat(v, st, j, k);
if (i <= k) return stat(v, i, dr, k);
}
int main()
{
cin>>n>>k;
for (i=1; i<=n; i++) cin>>v[i];
cout<<stat(v, 1, n, k);
return 0;
}