Pagini recente » Cod sursa (job #1256882) | Cod sursa (job #700960) | Cod sursa (job #2555371) | Cod sursa (job #823180) | Cod sursa (job #1014462)
#include <iostream>
#include <fstream>
#include <ctime>
#include <cstdlib>
int k,a[3000000];
using namespace std;
ifstream h("sdo.in");
ofstream g("sdo.out");
void quicksort(int *a,int f,int n)
{
int p,j,aux,i;
if(f<n)
{
p=rand() % (n-f) +f;
i=f;
j=n;
while(i<j){
while(a[i]<=a[p]&&i<n)
i++;
while(a[j]>a[p])
j--;
if(i<j){
aux=a[i];
a[i]=a[j];
a[j]=aux;
}
}
aux=a[p];
a[p]=a[j];
a[j]=aux;
if (j==k)
{
g<<a[j];
return;
}
else if (j<k) quicksort(a,j+1,n);
else quicksort(a,f,j-1);
}
else g<<a[f];
}
int main()
{int n,i;
h>>n>>k;
for (i=1;i<=n;i++) h>>a[i];
quicksort(a,1,n);
h.close();
g.close();
return 0;
}