import java.util.Scanner;

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();
		
		selectionSort(a,n);

}

	private static void  selectionSort(int a[],int n) {

		int count=0,temp=0,minj;

		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) {
					temp=a[i];
					a[i]=a[minj];
					a[minj]=temp;
					count++;
				}
		}

		for(int i=0;i<n-1;i++)
			System.out.print(a[i]+" ");
		System.out.println(a[n-1]);
		System.out.println(count);

	}

} import java.util.Scanner; Scanner java.util 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();
		
		selectionSort(a,n);

}

	private static void  selectionSort(int a[],int n) {

		int count=0,temp=0,minj;

		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) {
					temp=a[i];
					a[i]=a[minj];
					a[minj]=temp;
					count++;
				}
		}

		for(int i=0;i<n-1;i++)
			System.out.print(a[i]+" ");
		System.out.println(a[n-1]);
		System.out.println(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();
		
		selectionSort(a,n);

} 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();
		
		selectionSort(a,n);

} 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] a i sc.nextInt() sc.nextInt sc selectionSort(a,n) selectionSort a n String[] args args private static void  selectionSort(int a[],int n) {

		int count=0,temp=0,minj;

		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) {
					temp=a[i];
					a[i]=a[minj];
					a[minj]=temp;
					count++;
				}
		}

		for(int i=0;i<n-1;i++)
			System.out.print(a[i]+" ");
		System.out.println(a[n-1]);
		System.out.println(count);

	} selectionSort {

		int count=0,temp=0,minj;

		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) {
					temp=a[i];
					a[i]=a[minj];
					a[minj]=temp;
					count++;
				}
		}

		for(int i=0;i<n-1;i++)
			System.out.print(a[i]+" ");
		System.out.println(a[n-1]);
		System.out.println(count);

	} int count=0 count 0 temp=0 temp 0 minj; minj 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) {
					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) {
					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) {
					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; a[j]<a[minj] a[j] a j a[minj] a minj minj=j minj j if(minj!=i) {
					temp=a[i];
					a[i]=a[minj];
					a[minj]=temp;
					count++;
				} minj!=i minj i {
					temp=a[i];
					a[i]=a[minj];
					a[minj]=temp;
					count++;
				} 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 i=0;i<n-1;i++)
			System.out.print(a[i]+" "); int i=0; int i=0; i 0 i<n-1 i n-1 n 1 i++ i++ i System.out.print(a[i]+" "); System.out.print(a[i]+" ") System.out.print System.out System System.out a[i]+" " a[i] a i " " System.out.println(a[n-1]) System.out.println System.out System System.out a[n-1] a n-1 n 1 System.out.println(count) System.out.println System.out System System.out count int a[] a int n n
import java.util.Scanner;

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();
		
		selectionSort(a,n);

}

	private static void  selectionSort(int a[],int n) {

		int count=0,temp=0,minj;

		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) {
					temp=a[i];
					a[i]=a[minj];
					a[minj]=temp;
					count++;
				}
		}

		for(int i=0;i<n-1;i++)
			System.out.print(a[i]+" ");
		System.out.println(a[n-1]);
		System.out.println(count);

	}

}
