Cod sursa(job #2220243)

Utilizator Andrei-27Arhire Andrei Andrei-27 Data 10 iulie 2018 23:28:49
Problema Statistici de ordine Scor 50
Compilator cpp Status done
Runda Arhiva educationala Marime 0.81 kb
#include<iostream>
#include <fstream>
#include <algorithm>
#define NR  3 000 001
using namespace std;
ifstream f("sdo.in");
ofstream g("sdo.out");
void qSort(long v[3000001],long st,long dr)
{
    long long mijl,minim,maxim,temp;
    mijl=v[st+(dr-st)/2];
    minim=st;maxim=dr;
    do
    {
        while(v[minim]<mijl) minim++;
        while(v[maxim]>mijl) maxim--;
            if(minim<=maxim)
        {
            temp=v[minim];
            v[minim++]=v[maxim];
            v[maxim--]=temp;
        }
    }while(minim<=maxim);
    if(st<maxim) qSort(v,st,maxim);
    if(dr>minim) qSort(v,minim,dr);
}

int main()
{
    long n,v[3000001],i,k;
    f>>n>>k;
    for(i=1;i<=n;i++)
        f>>v[i];
     nth_element(v+1, v+k+1, v+n+1);

        g<<v[k]<<"\n";

 return 0;
}