Mai intai trebuie sa te autentifici.
Cod sursa(job #1558530)
| Utilizator | Data | 29 decembrie 2015 12:47:44 | |
|---|---|---|---|
| Problema | Statistici de ordine | Scor | 60 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 1.01 kb |
#include <iostream>
#include <math.h>
#include <stdlib.h>
#include <time.h>
#include <fstream>
using namespace std;
int a[3000001];
void quickSort(int arr[], int left, int right) {
int i = left, j = right,ind;
int tmp;
ind=(rand()%(j+1-i)+i);
int pivot = arr[ind];
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(){
srand(time(NULL));
fstream f,g;
f.open("sdo.in",ios::in);
g.open("sdo.out",ios::out);
int n,k;
f>>n;
f>>k;
for(int i=1;i<=n;i++)
f>>a[i];
quickSort(a,1,n);
g<<a[k];
}
