#include <stdio.h> #include <stdint.h> void sort_array(uint8_t *arr, uint8_t n) { bool swapped = true;; while (swapped){ swapped = false; for (int i = 0; i < n - 1; i++){ if (arr[i] > arr[i + 1]){ int temp = arr[i]; arr[i] = arr[i+1]; arr[i+1] = temp; swapped = true; } } } } 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