백준 25305 c++
#include <iostream>
using namespace std;
int input(int lower, int upper);
void int_array_input(int* array, int size);
void insertion_sort(int* array, int size);
void insertion_descending_sort(int* array, int size);
int main(void)
{
int N, k;
int *grade;
N = input(1, 1000);
k = input(1, N);
grade = new int[N];
int_array_input(grade, N);
//insertion_sort(grade, N);
//===================================================
insertion_descending_sort(grade, N);
for (int i = 0; i < N; i++)
{
cout << grade[i] << " ";
}
cout << endl;
//===================================================
cout << grade[N - k] << endl;
delete[] grade;
return 0;
}
int input(int lower, int upper)
{
int A;
while (1)
{
cin >> A;
if (A >= lower && A <= upper)
{
break;
}
else
{
;
}
}
return A;
}
void int_array_input(int* array, int size)
{
int i;
for (i = 0; i < size; i++)
{
array[i] = input(0, 10000);
}
return;
}
void insertion_sort(int* array, int size)
{
int i, j;
int key, temp;
for (i = 1; i < size; i++)
{
key = array[i];
for (j = i - 1; j >= 0; j--)
{
if (key < array[j])
{
temp = array[j];
array[j] = key;
array[j + 1] = temp;
}
else
{
;
}
}
}
return;
}
void insertion_descending_sort(int* array, int size)
{
int i, j;
int key, temp;
for (i = 1; i < size; i++)
{
key = array[i];
for (j = i - 1; j >= 0; j--)
{
if (key < array[j])
{
;
}
else
{
temp = array[j];
array[j] = key;
array[j + 1] = temp;
}
}
}
return;
}