import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);	
		int N = sc.nextInt();
		int[] A;
		A = new int[N];

		for(int i = 0; i < N; i++){
		 	A[i]= sc.nextInt();
		}
		int minj;
		int count = 0;
		for(int i = 0; i < N; i++){
			minj = i;
			for(int j = i; j < N; j++){
				if(A[j] < A[minj]){
					minj = j;
				}
			}
			if(minj != i){
				int temp = A[i];
				A[i] = A[minj];
				A[minj] = temp;
				count++;
			}
		}


		for(int k = 0; k < N; k++){
			System.out.printf("%d",A[k]);
			if(k != N - 1){
				System.out.printf(" ");
			}	
		}
		System.out.printf("\n%d\n",count);

	}
} import java.util.Scanner; Scanner java.util public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);	
		int N = sc.nextInt();
		int[] A;
		A = new int[N];

		for(int i = 0; i < N; i++){
		 	A[i]= sc.nextInt();
		}
		int minj;
		int count = 0;
		for(int i = 0; i < N; i++){
			minj = i;
			for(int j = i; j < N; j++){
				if(A[j] < A[minj]){
					minj = j;
				}
			}
			if(minj != i){
				int temp = A[i];
				A[i] = A[minj];
				A[minj] = temp;
				count++;
			}
		}


		for(int k = 0; k < N; k++){
			System.out.printf("%d",A[k]);
			if(k != N - 1){
				System.out.printf(" ");
			}	
		}
		System.out.printf("\n%d\n",count);

	}
} Main public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);	
		int N = sc.nextInt();
		int[] A;
		A = new int[N];

		for(int i = 0; i < N; i++){
		 	A[i]= sc.nextInt();
		}
		int minj;
		int count = 0;
		for(int i = 0; i < N; i++){
			minj = i;
			for(int j = i; j < N; j++){
				if(A[j] < A[minj]){
					minj = j;
				}
			}
			if(minj != i){
				int temp = A[i];
				A[i] = A[minj];
				A[minj] = temp;
				count++;
			}
		}


		for(int k = 0; k < N; k++){
			System.out.printf("%d",A[k]);
			if(k != N - 1){
				System.out.printf(" ");
			}	
		}
		System.out.printf("\n%d\n",count);

	} main {
		Scanner sc = new Scanner(System.in);	
		int N = sc.nextInt();
		int[] A;
		A = new int[N];

		for(int i = 0; i < N; i++){
		 	A[i]= sc.nextInt();
		}
		int minj;
		int count = 0;
		for(int i = 0; i < N; i++){
			minj = i;
			for(int j = i; j < N; j++){
				if(A[j] < A[minj]){
					minj = j;
				}
			}
			if(minj != i){
				int temp = A[i];
				A[i] = A[minj];
				A[minj] = temp;
				count++;
			}
		}


		for(int k = 0; k < N; k++){
			System.out.printf("%d",A[k]);
			if(k != N - 1){
				System.out.printf(" ");
			}	
		}
		System.out.printf("\n%d\n",count);

	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int N = sc.nextInt(); N sc.nextInt() sc.nextInt sc int[] A; A A = new int[N] A new int[N] N for(int i = 0; i < N; i++){
		 	A[i]= sc.nextInt();
		} int i = 0; int i = 0; i 0 i < N i N i++ i++ i {
		 	A[i]= sc.nextInt();
		} {
		 	A[i]= sc.nextInt();
		} A[i]= sc.nextInt() A[i] A i sc.nextInt() sc.nextInt sc int minj; minj int count = 0; count 0 for(int i = 0; i < N; i++){
			minj = i;
			for(int j = i; j < N; j++){
				if(A[j] < A[minj]){
					minj = j;
				}
			}
			if(minj != i){
				int temp = A[i];
				A[i] = A[minj];
				A[minj] = temp;
				count++;
			}
		} int i = 0; int i = 0; i 0 i < N i N i++ i++ i {
			minj = i;
			for(int j = i; j < N; j++){
				if(A[j] < A[minj]){
					minj = j;
				}
			}
			if(minj != i){
				int temp = A[i];
				A[i] = A[minj];
				A[minj] = temp;
				count++;
			}
		} {
			minj = i;
			for(int j = i; j < N; j++){
				if(A[j] < A[minj]){
					minj = j;
				}
			}
			if(minj != i){
				int temp = A[i];
				A[i] = A[minj];
				A[minj] = temp;
				count++;
			}
		} minj = i minj i for(int j = i; j < N; j++){
				if(A[j] < A[minj]){
					minj = j;
				}
			} int j = i; int j = i; j i j < N j N j++ j++ j {
				if(A[j] < A[minj]){
					minj = j;
				}
			} {
				if(A[j] < A[minj]){
					minj = j;
				}
			} if(A[j] < A[minj]){
					minj = j;
				} A[j] < A[minj] A[j] A j A[minj] A minj {
					minj = j;
				} minj = j minj j if(minj != i){
				int temp = A[i];
				A[i] = A[minj];
				A[minj] = temp;
				count++;
			} minj != i minj i {
				int temp = A[i];
				A[i] = A[minj];
				A[minj] = temp;
				count++;
			} int temp = A[i]; temp A[i] A i A[i] = A[minj] A[i] A i A[minj] A minj A[minj] = temp A[minj] A minj temp count++ count for(int k = 0; k < N; k++){
			System.out.printf("%d",A[k]);
			if(k != N - 1){
				System.out.printf(" ");
			}	
		} int k = 0; int k = 0; k 0 k < N k N k++ k++ k {
			System.out.printf("%d",A[k]);
			if(k != N - 1){
				System.out.printf(" ");
			}	
		} {
			System.out.printf("%d",A[k]);
			if(k != N - 1){
				System.out.printf(" ");
			}	
		} System.out.printf("%d",A[k]) System.out.printf System.out System System.out "%d" A[k] A k if(k != N - 1){
				System.out.printf(" ");
			} k != N - 1 k N - 1 N 1 {
				System.out.printf(" ");
			} System.out.printf(" ") System.out.printf System.out System System.out " " System.out.printf("\n%d\n",count) System.out.printf System.out System System.out "\n%d\n" count String[] args args public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);	
		int N = sc.nextInt();
		int[] A;
		A = new int[N];

		for(int i = 0; i < N; i++){
		 	A[i]= sc.nextInt();
		}
		int minj;
		int count = 0;
		for(int i = 0; i < N; i++){
			minj = i;
			for(int j = i; j < N; j++){
				if(A[j] < A[minj]){
					minj = j;
				}
			}
			if(minj != i){
				int temp = A[i];
				A[i] = A[minj];
				A[minj] = temp;
				count++;
			}
		}


		for(int k = 0; k < N; k++){
			System.out.printf("%d",A[k]);
			if(k != N - 1){
				System.out.printf(" ");
			}	
		}
		System.out.printf("\n%d\n",count);

	}
} public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);	
		int N = sc.nextInt();
		int[] A;
		A = new int[N];

		for(int i = 0; i < N; i++){
		 	A[i]= sc.nextInt();
		}
		int minj;
		int count = 0;
		for(int i = 0; i < N; i++){
			minj = i;
			for(int j = i; j < N; j++){
				if(A[j] < A[minj]){
					minj = j;
				}
			}
			if(minj != i){
				int temp = A[i];
				A[i] = A[minj];
				A[minj] = temp;
				count++;
			}
		}


		for(int k = 0; k < N; k++){
			System.out.printf("%d",A[k]);
			if(k != N - 1){
				System.out.printf(" ");
			}	
		}
		System.out.printf("\n%d\n",count);

	}
} Main
import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);	
		int N = sc.nextInt();
		int[] A;
		A = new int[N];

		for(int i = 0; i < N; i++){
		 	A[i]= sc.nextInt();
		}
		int minj;
		int count = 0;
		for(int i = 0; i < N; i++){
			minj = i;
			for(int j = i; j < N; j++){
				if(A[j] < A[minj]){
					minj = j;
				}
			}
			if(minj != i){
				int temp = A[i];
				A[i] = A[minj];
				A[minj] = temp;
				count++;
			}
		}


		for(int k = 0; k < N; k++){
			System.out.printf("%d",A[k]);
			if(k != N - 1){
				System.out.printf(" ");
			}	
		}
		System.out.printf("\n%d\n",count);

	}
}
