Cod sursa(job #2127956)

Utilizator thedorbulacovschittrter thedorbulacovschi Data 11 februarie 2018 11:56:08
Problema Statistici de ordine Scor 20
Compilator cpp Status done
Runda Arhiva educationala Marime 0.67 kb
#include <fstream>

using namespace std;
ifstream cin("sdo.in");
ofstream cout("sdo.out");
int v[100000],n;
int part(int i,int j)
{
    int a=v[(i+j)/2];
    while(i<j)
    {
        while(v[i]<a)
        {
            i++;
        }
        while(v[j]>a)
        {
            j--;
        }
        if(i<j)
        {
            swap(v[i],v[j]);
            i++;
            j--;
        }
    }
    return j;
}
void sorta(int inc,int sf)
{
    if(inc==sf)
        return ;
    int j=part(inc,sf);
    sorta(inc,j);
    sorta(j+1,sf);
}
int main()
{
    int k;
    cin>>n>>k;
    for(int i=1;i<=n;i++)
    {
        cin>>v[i];
    }
    sorta(1, n);
    cout<<v[k]<<'\n';
    return 0;
}