#include #include void selectionSort(int arr[], int n, int *swapCount, int *compCount, int *opCount) { for (int i = 0; i < n - 1; i++) { int minIdx = i; for (int j = i + 1; j < n; j++) { (*compCount)++; if (arr[j] < arr[minIdx]) { minIdx = j; } } int temp = arr[i]; arr[i] = arr[minIdx]; arr[minIdx] = temp; (*swapCount)++; } *opCount = *compCount + *swapCount; } int main() { int n; if (scanf("%d", &n) != 1 || n < 2 || n > 20) { printf("Invalid Input\n"); return 0; } int arr[n]; for (int i = 0; i < n; i++) { if (scanf("%d", &arr[i]) != 1) { printf("Invalid Input\n"); return 0; } } int swapCount = 0; int compCount = 0; int opCount = 0; selectionSort(arr, n, &swapCount, &compCount, &opCount); for (int i = 0; i < n; i++) { printf("%d", arr[i]); if (i < n - 1) printf(" "); } printf("\n%d\n%d\n%d\n", swapCount, compCount, opCount); return 0; }