Pagini recente » Cod sursa (job #2631590) | Cod sursa (job #1713684) | Cod sursa (job #1045391) | Cod sursa (job #2958768) | Cod sursa (job #2219753)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("sdo.in");
ofstream g("sdo.out");
int n,k,a[4000001];
int partitionare(int st,int dr)
{
int i,j,pivot,aux;
pivot=a[dr];
j=st-1;
for(i=st;i<=dr;i++)
{
if(a[i]<=pivot)
{
j++;
aux=a[j];
a[j]=a[i];
a[i]=aux;
}
}
return j;
}
void statistica(int st,int dr)
{
int poz;
poz=partitionare(st,dr);
//cout<<poz<<" ";
if(poz==k)
{
g<<a[k]<<" ";
}
else
{
if(poz<k)
{
statistica(poz+1,dr);
}
else
{
statistica(st,poz-1);
}
}
}
int main()
{
int i;
f>>n>>k;
for(i=1;i<=n;i++)
{
f>>a[i];
}
statistica(1,n);
return 0;
}