Cod sursa(job #1019872)

Utilizator tudor.rotarusTudor Rotarus tudor.rotarus Data 1 noiembrie 2013 01:42:07
Problema Statistici de ordine Scor 50
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include <fstream>

using namespace std;

ifstream f("sdo.in");
ofstream g("sdo.out");

long n,k,a[2000000];

long poz(int p,int u)
{long aux,piv,x;
piv=a[p];
while(p<u)
{
    if(a[p]>a[u])
    {
        aux=a[p];
        a[p]=a[u];
        a[u]=aux;
    }

 if(a[p]==piv)
        u--;
    else p++;
}
x=p;
return x;
}

int quick(int p,int u)
{long x;
    if(p<u)
    {
        x=poz(p,u);
        quick(p,x-1);
        quick(x+1,u);
    }
}

int main()
{long i,x;

f>>n>>k;
for(i=1;i<=n;i++)
{
    f>>a[i];
}

quick(1,n);

g<<a[k];

g.close();

return 0;
}