Pagini recente » Cod sursa (job #2288909) | Cod sursa (job #2511193) | Cod sursa (job #2253363) | Cod sursa (job #2078326) | Cod sursa (job #1275974)
#include <fstream>
using namespace std;
ifstream f("sdo.in");
ofstream g("sdo.out");
long long a[3000005];
void merge(long long l,long long m,long long 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(long long l,long long 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;
}