import java.util.Scanner;

public class Main{


	public static void SelectionSort(int[] array){
		int len=array.length;
		int cnt=0;
		int min;
		int swap;
		for(int i=0;i<len-1;i++){
			min=i;
			for(int j=i+1;j<len;j++){
			if(array[min]>array[j])min=j;
			}
			if(min!=i){
				cnt++;
				swap=array[i];array[i]=array[min];array[min]=swap;

		}

		}

		//??\????????????
		for(int i=0;i<len;i++){
		System.out.print(array[i]);
		if(i!=len-1)System.out.print(" ");}

		System.out.println();
		System.out.println(cnt);
	}

	public static void main(String[] args){

		int n;

		Scanner scan=new Scanner(System.in);
		n=scan.nextInt();
		int[] box=new int[n];

		for(int i=0;i<n;i++){
		box[i]=scan.nextInt();
		}

		SelectionSort(box);

		scan.close();

	}

} import java.util.Scanner; Scanner java.util public class Main{


	public static void SelectionSort(int[] array){
		int len=array.length;
		int cnt=0;
		int min;
		int swap;
		for(int i=0;i<len-1;i++){
			min=i;
			for(int j=i+1;j<len;j++){
			if(array[min]>array[j])min=j;
			}
			if(min!=i){
				cnt++;
				swap=array[i];array[i]=array[min];array[min]=swap;

		}

		}

		//??\????????????
		for(int i=0;i<len;i++){
		System.out.print(array[i]);
		if(i!=len-1)System.out.print(" ");}

		System.out.println();
		System.out.println(cnt);
	}

	public static void main(String[] args){

		int n;

		Scanner scan=new Scanner(System.in);
		n=scan.nextInt();
		int[] box=new int[n];

		for(int i=0;i<n;i++){
		box[i]=scan.nextInt();
		}

		SelectionSort(box);

		scan.close();

	}

} Main public static void SelectionSort(int[] array){
		int len=array.length;
		int cnt=0;
		int min;
		int swap;
		for(int i=0;i<len-1;i++){
			min=i;
			for(int j=i+1;j<len;j++){
			if(array[min]>array[j])min=j;
			}
			if(min!=i){
				cnt++;
				swap=array[i];array[i]=array[min];array[min]=swap;

		}

		}

		//??\????????????
		for(int i=0;i<len;i++){
		System.out.print(array[i]);
		if(i!=len-1)System.out.print(" ");}

		System.out.println();
		System.out.println(cnt);
	} SelectionSort {
		int len=array.length;
		int cnt=0;
		int min;
		int swap;
		for(int i=0;i<len-1;i++){
			min=i;
			for(int j=i+1;j<len;j++){
			if(array[min]>array[j])min=j;
			}
			if(min!=i){
				cnt++;
				swap=array[i];array[i]=array[min];array[min]=swap;

		}

		}

		//??\????????????
		for(int i=0;i<len;i++){
		System.out.print(array[i]);
		if(i!=len-1)System.out.print(" ");}

		System.out.println();
		System.out.println(cnt);
	} int len=array.length; len array.length array array.length int cnt=0; cnt 0 int min; min int swap; swap for(int i=0;i<len-1;i++){
			min=i;
			for(int j=i+1;j<len;j++){
			if(array[min]>array[j])min=j;
			}
			if(min!=i){
				cnt++;
				swap=array[i];array[i]=array[min];array[min]=swap;

		}

		} int i=0; int i=0; i 0 i<len-1 i len-1 len 1 i++ i++ i {
			min=i;
			for(int j=i+1;j<len;j++){
			if(array[min]>array[j])min=j;
			}
			if(min!=i){
				cnt++;
				swap=array[i];array[i]=array[min];array[min]=swap;

		}

		} {
			min=i;
			for(int j=i+1;j<len;j++){
			if(array[min]>array[j])min=j;
			}
			if(min!=i){
				cnt++;
				swap=array[i];array[i]=array[min];array[min]=swap;

		}

		} min=i min i for(int j=i+1;j<len;j++){
			if(array[min]>array[j])min=j;
			} int j=i+1; int j=i+1; j i+1 i 1 j<len j len j++ j++ j {
			if(array[min]>array[j])min=j;
			} {
			if(array[min]>array[j])min=j;
			} if(array[min]>array[j])min=j; array[min]>array[j] array[min] array min array[j] array j min=j min j if(min!=i){
				cnt++;
				swap=array[i];array[i]=array[min];array[min]=swap;

		} min!=i min i {
				cnt++;
				swap=array[i];array[i]=array[min];array[min]=swap;

		} cnt++ cnt swap=array[i] swap array[i] array i array[i]=array[min] array[i] array i array[min] array min array[min]=swap array[min] array min swap for(int i=0;i<len;i++){
		System.out.print(array[i]);
		if(i!=len-1)System.out.print(" ");} int i=0; int i=0; i 0 i<len i len i++ i++ i {
		System.out.print(array[i]);
		if(i!=len-1)System.out.print(" ");} {
		System.out.print(array[i]);
		if(i!=len-1)System.out.print(" ");} System.out.print(array[i]) System.out.print System.out System System.out array[i] array i if(i!=len-1)System.out.print(" "); i!=len-1 i len-1 len 1 System.out.print(" ") System.out.print System.out System System.out " " System.out.println() System.out.println System.out System System.out System.out.println(cnt) System.out.println System.out System System.out cnt int[] array array public static void main(String[] args){

		int n;

		Scanner scan=new Scanner(System.in);
		n=scan.nextInt();
		int[] box=new int[n];

		for(int i=0;i<n;i++){
		box[i]=scan.nextInt();
		}

		SelectionSort(box);

		scan.close();

	} main {

		int n;

		Scanner scan=new Scanner(System.in);
		n=scan.nextInt();
		int[] box=new int[n];

		for(int i=0;i<n;i++){
		box[i]=scan.nextInt();
		}

		SelectionSort(box);

		scan.close();

	} int n; n Scanner scan=new Scanner(System.in); scan new Scanner(System.in) n=scan.nextInt() n scan.nextInt() scan.nextInt scan int[] box=new int[n]; box new int[n] n for(int i=0;i<n;i++){
		box[i]=scan.nextInt();
		} int i=0; int i=0; i 0 i<n i n i++ i++ i {
		box[i]=scan.nextInt();
		} {
		box[i]=scan.nextInt();
		} box[i]=scan.nextInt() box[i] box i scan.nextInt() scan.nextInt scan SelectionSort(box) SelectionSort box scan.close() scan.close scan String[] args args public class Main{


	public static void SelectionSort(int[] array){
		int len=array.length;
		int cnt=0;
		int min;
		int swap;
		for(int i=0;i<len-1;i++){
			min=i;
			for(int j=i+1;j<len;j++){
			if(array[min]>array[j])min=j;
			}
			if(min!=i){
				cnt++;
				swap=array[i];array[i]=array[min];array[min]=swap;

		}

		}

		//??\????????????
		for(int i=0;i<len;i++){
		System.out.print(array[i]);
		if(i!=len-1)System.out.print(" ");}

		System.out.println();
		System.out.println(cnt);
	}

	public static void main(String[] args){

		int n;

		Scanner scan=new Scanner(System.in);
		n=scan.nextInt();
		int[] box=new int[n];

		for(int i=0;i<n;i++){
		box[i]=scan.nextInt();
		}

		SelectionSort(box);

		scan.close();

	}

} public class Main{


	public static void SelectionSort(int[] array){
		int len=array.length;
		int cnt=0;
		int min;
		int swap;
		for(int i=0;i<len-1;i++){
			min=i;
			for(int j=i+1;j<len;j++){
			if(array[min]>array[j])min=j;
			}
			if(min!=i){
				cnt++;
				swap=array[i];array[i]=array[min];array[min]=swap;

		}

		}

		//??\????????????
		for(int i=0;i<len;i++){
		System.out.print(array[i]);
		if(i!=len-1)System.out.print(" ");}

		System.out.println();
		System.out.println(cnt);
	}

	public static void main(String[] args){

		int n;

		Scanner scan=new Scanner(System.in);
		n=scan.nextInt();
		int[] box=new int[n];

		for(int i=0;i<n;i++){
		box[i]=scan.nextInt();
		}

		SelectionSort(box);

		scan.close();

	}

} Main
import java.util.Scanner;

public class Main{


	public static void SelectionSort(int[] array){
		int len=array.length;
		int cnt=0;
		int min;
		int swap;
		for(int i=0;i<len-1;i++){
			min=i;
			for(int j=i+1;j<len;j++){
			if(array[min]>array[j])min=j;
			}
			if(min!=i){
				cnt++;
				swap=array[i];array[i]=array[min];array[min]=swap;

		}

		}

		//??\????????????
		for(int i=0;i<len;i++){
		System.out.print(array[i]);
		if(i!=len-1)System.out.print(" ");}

		System.out.println();
		System.out.println(cnt);
	}

	public static void main(String[] args){

		int n;

		Scanner scan=new Scanner(System.in);
		n=scan.nextInt();
		int[] box=new int[n];

		for(int i=0;i<n;i++){
		box[i]=scan.nextInt();
		}

		SelectionSort(box);

		scan.close();

	}

}