Cod sursa(job #855571)

Utilizator costel93FMI - Dumea Eduard Constantin costel93 Data 15 ianuarie 2013 11:05:59
Problema Statistici de ordine Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 1 kb
#include <stdlib.h>
#include <time.h>
#include<fstream>
 
 
using namespace std;
 
ifstream f("sdo.in");
ofstream g("sdo.out");
 
int n, k, v[3000001];
 
void sort(int st,int dr)
{
    if(st<dr)
    {
        srand ( time(NULL) );
         
        int rnd, m;
         
        m=dr-st+1;
         
		rnd=rand()%m+st;
			
        int i,j;
                 
        i=st;
        j=dr;
		
        while(i<=j)
        {
            while(v[i]<v[rnd])
				i++;
            while(v[j]>v[rnd])
				j--;
            if(i<=j)
            {
                int aux;
                aux=v[i];
                v[i]=v[j];
                v[j]=aux;
                i++;
                j--;
            }
        }
		
		if(k>=i) 
			sort(i,dr);
		else 
			sort(st,j);
     
    }
    else 
		g<<v[st]<<" ";
}
         
         
 
 
int main()
{
    f>>n;
    f>>k;
     
    int i;
    for(i=1;i<=n;i++)
        f>>v[i];
     
    sort(1,n);
     
    return 0;
}