Pagini recente » Cod sursa (job #2206645) | Cod sursa (job #1353044) | Cod sursa (job #155933) | Cod sursa (job #268539) | Cod sursa (job #1275972)
#include <fstream>
using namespace std;
ifstream f("sdo.in");
ofstream g("sdo.out");
long long a[3000005];
void merge(int l,int m,int h)
{
long long g,i,j,b[3000005],k;
g=l;
i=l;
j=m+1;
while((g<=m)&&(j<=h))
{
if(a[g]<=a[j])
{
b[i]=a[g];
g++;
}
else
{
b[i]=a[j];
j++;
}
i++;
}
if(g>m)
{
for(k=j;k<=h;k++)
{
b[i]=a[k];
i++;
}
}
else
{
for(k=g;k<=m;k++)
{
b[i]=a[k];
i++;
}
}
for(k=l;k<=h;k++) a[k]=b[k];
}
void merge_sort(int l,int h)
{
long long m;
if(l<h)
{
m=(l+h)/2;
merge_sort(l,m);
merge_sort(m+1,h);
merge(l,m,h);
}
}
int main()
{
long long num,i;
long long k;
f>>num>>k;
for(i=1;i<=num;i++)
{
f>>a[i];
}
merge_sort(1,num);
g<<a[k];
g.close();
return 0;
}