Pagini recente » Cod sursa (job #2792484) | Cod sursa (job #3123115) | Cod sursa (job #1731013) | Cod sursa (job #2067343) | Cod sursa (job #1287503)
#include <bits/stdc++.h>
using namespace std;
const int Nmax = 3000005 + 1;
int A[Nmax];
int N, K;
void quicksort( int l, int r, int k )
{
int i = l, j = r, pivot = A[l + rand() % (r - l + 1)];
do
{
while ( A[i] < pivot ) i++;
while ( A[j] > pivot ) j--;
if ( i <= j )
{
swap( A[i], A[j] );
i++;
j--;
}
} while ( i < j );
if ( l < j && j >= k )
quicksort( l, j, k );
if ( i < r && i <= k )
quicksort( i, r, k );
}
int main()
{
ifstream in("sdo.in");
ofstream out("sdo.out");
srand( time( NULL ) );
ios_base::sync_with_stdio( false );
in >> N >> K;
for ( int i = 1; i <= N; ++i )
in >> A[i];
quicksort( 1, N, K );
out << A[K];
return 0;
}