Cod sursa(job #1047671)

Utilizator Cezara-OliviaBenegui Cezara Cezara-Olivia Data 4 decembrie 2013 20:04:00
Problema Statistici de ordine Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.74 kb
#include<fstream>
 using namespace std;
ifstream f("sdo.in");
ofstream g("sdo.out");
int i,n,k,v[3000005];
 void statistici_ordin(int s,int d)
{
 int min,max,mij;
 mij=v[(s+d)/2];
 min=s;
 max=d;
 
 while (min<max)
 
     {
        while (v[min]< mij) min++;
        while (v[max]>mij) max--;
 
        if (min<=max)
        {
            int aux=v[min];
            v[min]=v[max];
            v[max]=aux;
            min++;
            max--;
        }
                 }
        if (k<=max && s<max) statistici_ordin(s,max);
        if (k>=min && min<d) statistici_ordin(min,d);
}
 
int main()
{
 f>>n>>k;
 
 for(i=1;i<=n;i++) f>>v[i];
 
 statistici_ordin(1,n);
 
 g<<v[k];
 
 f.close();
 g.close();
 
return 0;
}