Cod sursa(job #374277)
Utilizator | Data | 16 decembrie 2009 16:21:37 | |
---|---|---|---|
Problema | Statistici de ordine | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.59 kb |
# include <fstream.h>
fstream f ("sdo.in",ios::in);
fstream g("sdo.out",ios::out);
int a[3000005],i,n,aux,k,x,y;
void rez (int st,int dr)
{
int i=st,j=dr,i1=0,j1=-1;
while (i<j)
{
if (a[i]>a[j])
{
aux=a[i];
a[i]=a[j];
a[j]=aux;
aux=i1;
i1=-j1;
j1=-aux;
}
i=i+i1;
j=j+j1;
}
if (i==k)
g<<a[i];
else
{
if (i>k)
rez (st,i-1);
else
rez (i+1,dr);
}
}
int main ()
{
f>>n>>k;
for (i=1;i<=n;i++)
f>>a[i];
rez (1,n);
return 0;
}