Cod sursa(job #1018906)

Utilizator tavi.belu1994FMI Belu Andrei Octavian tavi.belu1994 Data 30 octombrie 2013 08:55:59
Problema Statistici de ordine Scor 60
Compilator cpp Status done
Runda Arhiva educationala Marime 0.95 kb
#include <iostream>
#include <cstdio>
FILE *f,*g;
using namespace std;
#define MAX_N 3000000
long A[MAX_N];

void quickSort(long arr[50001], long left, long right){

      long i = left, j = right;
      long tmp;
      long pivot = arr[(left + right) / 2];
      while (i <= j)
      {
            while (arr[i] < pivot)
                  i++;
            while (arr[j] > pivot)
                  j--;
            if (i <= j)
            {
                  tmp = arr[i];
                  arr[i] = arr[j];
                  arr[j] = tmp;
                  i++;
                  j--;
            }
      }
      if (left < j)
            quickSort(arr, left, j);
      if (i < right)
            quickSort(arr, i, right);
}


int main(){
f=fopen("sdo.in","r");
g=fopen("sdo.out","w");
long n,k,i;
fscanf(f,"%d%d",&n,&k);
for(i=1;i<=n;i++)
{
    fscanf(f,"%d",&A[i]);
}
quickSort(A,1,n);
fprintf(g,"%d",A[k]);
return 0;
}