랜덤하게 입력된 숫자를 정렬 후, k-1번째의 수를 출력하면 되는 문제입니다.
저는 삽입정렬을 구현해 문제를 해결했습니다.
#include <iostream>
int main()
{
int n, k;
int* nums;
std::cin >> n >> k;
nums = new int[n];
for (int i = 0; i < n; i++)
std::cin >> nums[i];
int i, j, key = 0;
for (i = 0; i < n; i++)
{
key = nums[i];
for (j = i - 1; j >= 0; j--)
{
if (nums[j] < key)
nums[j + 1] = nums[j];
else
break;
}
nums[j + 1] = key;
}
std::cout << nums[k - 1];
delete[] nums;
return 0;
}