Pagini recente » Cod sursa (job #1526399) | Cod sursa (job #2854542) | Cod sursa (job #2982385) | Cod sursa (job #2604130) | Cod sursa (job #635175)
Cod sursa(job #635175)
#include <fstream>
#define N 3000010
std::ifstream in ("sdo.in");
std::ofstream out ("sdo.out");
int a[N],n,k,i,z;
void qsort (int l,int r) {
if (r-l<=1||l>k||r<=k) return;
int y=l,v,p=l+(15485863%(r-l));
z=a[p]; a[p]=a[r-1]; v=a[r-1]=z;
for (i=l; i<r-1; i++)
if (a[i]<v) {
z=a[y]; a[y++]=a[i]; a[i]=z;
}
a[r-1]=a[y]; a[y]=v;
qsort (l,y);
qsort (y,r);
}
int main () {
in>>n>>k; k--;
for (i=0; i<n; i++) in>>a[i];
qsort (0,n);
out<<a[k]<<"\n";
return 0;
}