Pagini recente » Cod sursa (job #2889117) | Cod sursa (job #2671915) | Cod sursa (job #1433065) | Cod sursa (job #305192) | Cod sursa (job #2650424)
#include <iostream>
#include <fstream>
using namespace std;
int v[3000003];
void quickSort(int indexLow, int indexHigh) {
if (indexLow < indexHigh) {
int p = part(indexLow, indexHigh);
quickSort(indexLow, p);
quickSort(p + 1, indexHigh);
}
}
int part(int indexLow, int indexHigh) {
int pivot = v[indexHigh];
int i = indexLow;
for (int j = indexLow + 1; j <= indexHigh; ++j) {
if (v[j] < pivot) {
swap(v[j], v[i]);
i += 1;
}
}
swap(pivot, v[i]);
return i;
}
int main()
{
ifstream fin("sdo.in");
ofstream fout("sdo.out");
int n, k;
fin >> n >> k;
for (int i = 1; i <= n; ++i) {
fin >> v[i];
}
quickSort(1, n);
fout << v[k];
return 0;
}