Pagini recente » Cod sursa (job #55130) | Cod sursa (job #177623) | Cod sursa (job #384503) | Cod sursa (job #2586208) | Cod sursa (job #2066454)
#include<fstream>
#include<cstdlib>
using namespace std;
ifstream f("sdo.in");
ofstream g("sdo.out");
int hoare(int a[],int p,int r)
{
int pivot= a[p+(rand()%(r-p+1))],i,j;
i=p-1;
j=r+1;
while(true){
do{
++i;
}while(a[i]<pivot);
do{
--j;
}while(a[j]>pivot);
if(i>=j)return j;
int aux=a[i];
a[i]=a[j];
a[j]=aux;
}
}
void quicksort(int a[],int p,int r){
if(p<r){
int q=hoare(a,p,r);
quicksort(a,p,q);
quicksort(a,q+1,r);
}
}
int main()
{
int v[500001],i,n,k;
f>>n>>k;
for(i=0;i<n;i++)
f>>v[i];
quicksort(v,0,n-1);
g<<v[k-1];
return 0;
}