Pagini recente » Cod sursa (job #2030319) | Cod sursa (job #1204985) | Cod sursa (job #1523537) | Cod sursa (job #3221479) | Cod sursa (job #1308730)
#include<iostream>
#include<fstream>
using namespace std;
unsigned long a[3000000];
int n,k,s;
void poz (int li,int ls,int &s,unsigned long a[3000000])
{
int i=li,j=ls,c,i1=0,j1=-1;
while (i<j)
{
if (a[i]>a[j])
{
c=a[j]; a[j]=a[i]; a[i]=c;
c=i1; i1=-j1; j1=-c;
}
i+=i1;
j+=j1;
}
s=i;
}
void quick (int li,int ls)
{
if(li<ls)
{
poz(li,ls,s,a);
if(s>k) quick(li,s-1);
else if (s<k) quick(s+1,ls);
}
}
int main()
{
int i;
ifstream f("sdo.in");
ofstream g("sdo.out");
f>>n>>k;
for(i=1;i<=n;i++)
f>>a[i];
quick(1,n);
g<<a[k];
f.close();
g.close();
}