Pagini recente » Cod sursa (job #2340569) | Cod sursa (job #806914) | Cod sursa (job #1780045) | Cod sursa (job #1872044) | Cod sursa (job #964979)
Cod sursa(job #964979)
#include <iostream>
#include <fstream>
#include <cstring>
#include <cstdlib>
#include <ctime>
using namespace std;
int a[3000005], N, K;
void QSort( int l, int r )
{
int i = l, j = r, p = a[ (i+j) / 2 ];
do
{
while( a[i] < p )
i++;
while( a[j] > p )
j--;
if ( i <= j )
{
swap( a[i], a[j] );
i++;
j--;
}
}while( i < j );
if ( l < j && j >= K )
QSort( l, j );
if ( i < r && i <= K )
QSort( i, r );
}
int main()
{
ifstream f("sdo.in");
ofstream g("sdo.out");
f >> N >> K;
srand(time(NULL));
for ( int i = 1; i <= N; i++ )
f >> a[i];
QSort(1, N);
g << a[K];
return 0;
}