Pagini recente » Cod sursa (job #2517595) | Cod sursa (job #1553293) | Cod sursa (job #1689140) | Cod sursa (job #2553897) | Cod sursa (job #672820)
Cod sursa(job #672820)
#include <fstream>
#include <cstdlib>
using namespace std;
ifstream in("sdo.in");
ofstream out ("sdo.out");
int n, v[3000000],k;
void citire () {
in >> n>>k;
for (int i = 1 ; i <= n ;++i) {
in >> v[i];
}
}
int quickSort (int l, int r) {
int aux,poz=l+rand()%(r-l+1),pivot=v[poz],i,j;
aux = v[poz];
v[poz]=v[r];
v[r]=aux;
for (i=j=l;i<r;++i){
if(v[i]<=pivot){
aux=v[j];
v[j]=v[i];
v[i]=aux;
j++;
}
}
aux = v[j];
v[j]=v[r];
v[r]=aux;
if (j == k) {
return v[j];
}
if(j > k) {
return quickSort (l,j-1);
}
return quickSort(j+1,r);
}
int main () {
citire ();
out << quickSort(1,n) << '\n';
return 0;
}