Pagini recente » Cod sursa (job #562091) | Cod sursa (job #1718041) | Cod sursa (job #1894057) | Cod sursa (job #3267047) | Cod sursa (job #434442)
Cod sursa(job #434442)
#include<stdio.h>
FILE *f,*g;
int n,k,v[3000001];
int pivot(int p, int u)
{
int aux,sem=1;
while(p<u)
{
if(v[p]>v[u])
{
sem*=-1;
aux=v[p];
v[p]=v[u];
v[u]=aux;
}
if(sem==1)
p++;
else
u--;
}
return p;
}
int sort(int prim, int ult)
{
int w;
w=pivot(prim,ult);
if(w==k)
return v[w];
else
if(k<w)
return sort(prim,w-1);
else
return sort(w+1,ult);
}
int main ()
{
int i,q;
f=fopen("sdo.in","r");
fscanf(f,"%d%d",&n,&k);
for(i=1;i<=n;i++)
fscanf(f,"%d",&v[i]);
fclose(f);
q=sort(1,n);
g=fopen("sdo.out","w");
fprintf(g,"%d\n",q);
fclose(g);
return 0;}