Cod sursa(job #3228292)

Utilizator adriana_geamanuGeamanu Adriana Maria adriana_geamanu Data 7 mai 2024 12:42:22
Problema Statistici de ordine Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.68 kb
#include <iostream>

using namespace std;
int n,v[100005],w[100005],k;
void interclasare(int st,int dr,int mij)
{
    int i=st,j=mij+1,k=st;
    while(i<=mij && j<=dr)
        if(v[i]<v[j])
            w[k++]=v[i++];
        else w[k++]=v[j++];
    while(i<=mij)
        w[k++]=v[i++];
    while(j<=dr)
        w[k++]=v[j++];
    for(i=st;i<=dr;i++)
        v[i]=w[i];
}
void sortare(int st,int dr)
{   if(st==dr)
    return;

    int mij=(st+dr)/2;
    sortare(st,mij);
    sortare(mij+1,dr);
    interclasare(st,dr,mij);

}
int main()
{
    int i;
    cin>>n>>k;
    for(i=0;i<n;i++)
        cin>>v[i];
    sortare(0,n-1);
    cout<<v[k-1];
    return 0;
}