import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;

public class Main {

	public void Sort(){

	}

	public void maain(){

	}

	public static void main(String[] args) throws IOException {
		// TODO ?????????????????????????????????????????????

		//1???????????\????????¢
	       StringBuilder buider = new StringBuilder();

	       BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        String n = br.readLine();
        int count = 0;
        int w = 0;

        //??\????????¢
        int[] LaunderingNum = new int[Integer.parseInt(n)];

        String[] input2 = br.readLine().split(" ");

        for(int i = 0; i < LaunderingNum.length; i++){
        	LaunderingNum[i] = Integer.parseInt(input2[i]);
        }

        //
        for(int i = 0; i < LaunderingNum.length - 1; i++){
        	
        	int minj = i;
        	
        	for(int j = i + 1; j < LaunderingNum.length; j++){
        		
        		if(LaunderingNum[j] < LaunderingNum[minj]){
        			minj = j;
        		}
        	}
        	if(minj != i){
        		
    			w = LaunderingNum[i];
    			LaunderingNum[i] = LaunderingNum[minj];
    			LaunderingNum[minj] = w;
    			count++;
        	}

        }
        //
        for(int i = 0; i < LaunderingNum.length; i++){

        	if(i == LaunderingNum.length - 1){
        		System.out.println(LaunderingNum[i]);
        	}else{
            	System.out.print(LaunderingNum[i] + " ");
        	}

        }
        System.out.println(count);
	}
}
/tmp/hf-datasets-cache/medium/datasets/42704881117311-config-parquet-and-info-qiankunmu-Project_CodeNet-896c9d36/hub/datasets--qiankunmu--Project_CodeNet_Python800_and_Java250/snapshots/c899fde44a77ba1cc14973ed3de064e4ff3aadc7/Project_CodeNet_Java250.tar.gz