Pagini recente » Cod sursa (job #3257174) | Cod sursa (job #2544733) | Cod sursa (job #2684588) | Cod sursa (job #1661098) | Cod sursa (job #1783300)
#include <cstdio>
#include <cstdlib>
using namespace std;
FILE *f = fopen("sdo.in", "r");
FILE *g = fopen("sdo.out", "w");
int n, k;
void QuickSort(int *v, int st, int dr)
{
if (st < dr)
{
int i = st, j = dr, x = v[st];
while (i < j)
{
while (i < j && v[j] >= x)
j--;
v[i] = v[j];
while (i < j && v[i] <= x)
i++;
v[j] = v[i];
}
v[i] = x;
if (i <= k && k <= dr)
QuickSort(v, i + 1, dr);
if (j >= k && k >= st)
QuickSort(v, st, j - 1);
}
}
int main()
{
int i;
fscanf(f, "%d %d", &n, &k);
int *v = (int*)calloc(n + 2, sizeof(int));
for (i = 1; i <= n; i++)
fscanf(f, "%d", &v[i]);
QuickSort(v, 1, n);
fprintf(g, "%d", v[k]);
return 0;
}