Cod sursa(job #1275995)

Utilizator unudoitreiRusu Alexandru unudoitrei Data 25 noiembrie 2014 21:11:19
Problema Statistici de ordine Scor 60
Compilator cpp Status done
Runda Arhiva educationala Marime 0.88 kb
#include <fstream>
using namespace std;
#define MAX_N 3000005
ifstream f("sdo.in");
ofstream g("sdo.out");
int a[MAX_N];
void quickSort(int arr[], int left, int right) {
      int i = left, j = right;
      int tmp;
      int 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()
{
    int n,k;
    f>>n>>k;
    for(int i=1;i<=n;++i)
        f>>a[i];
    quickSort(a,1,n);
    g<<a[k];
    g.close();
    return 0;
}