Cod sursa(job #1027478)

Utilizator RaduStefanFMI - Radu Stefan RaduStefan Data 12 noiembrie 2013 20:08:50
Problema Statistici de ordine Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.69 kb
#include<fstream>
using namespace std;
int a[3000001];
ifstream fcin("sdo.in");
ofstream fcout("sdo.out");

void quickSort(int a[], int left, int right,int k) 
{
	int i = left, j = right;
	int tmp;
	int pivot = a[(left+right)/2];
	while (i < j)
	{
		while (a[i] < pivot)
			i++;
		while (a[j] > pivot)
			j--;
		if (i <= j) 
		{
			tmp = a[i];
			a[i] = a[j];
			a[j] = tmp;
			i++;
			j--;
		}
	}
	if (left < j && k<=j)
		quickSort(a, left, j,k);
	if (i < right && k>=i)
		quickSort(a, i, right,k);
}
int main()
{
	int n,i,k;
	fcin>>n>>k;
	for(i=1;i<=n;i++)
		fcin>>a[i];
	quickSort(a,1,n,k);
	fcout<<a[k];
	//for(i=1;i<=n;i++)
	//	fcout<<a[i]<<" ";
	return 0;
}