#include <stdio.h> #include <stdint.h> void sort_array(uint8_t *arr, uint8_t n) { for(int i = 1; i < n; i++){ uint8_t key = arr[i]; int j = i - 1; while(j >= 0 && arr[j] > key){ arr[j + 1] = arr[j]; j--; } arr[j + 1] = key; } } void find_kth_elements(uint8_t *arr, uint8_t n, uint8_t k, uint8_t *smallest, uint8_t *largest) { sort_array(arr, n); *smallest = arr[k - 1]; *largest = arr[n - k]; } int main() { uint8_t n, k; scanf("%hhu", &n); uint8_t arr[100]; for (uint8_t i = 0; i < n; i++) { scanf("%hhu", &arr[i]); } scanf("%hhu", &k); uint8_t smallest, largest; find_kth_elements(arr, n, k, &smallest, &largest); printf("%hhu %hhu", smallest, largest); return 0; }
Test Cases
Test Results
Input
5 10 3 5 2 7 2
Expected Output
3 7