import java.util.Scanner;

public class Main{
	public static void main(String args[]) {
		int i, j;// loop counter
		int N/* number of element */, num[]/* array of number */, min/* order number of minimum number */;
		int count = 0;// count number of exchanging number
		Scanner sc = new Scanner(System.in);
		N = sc.nextInt();
		num = new int[N];
		for (i = 0; i < N; ++i) {
			num[i] = sc.nextInt();
		}
		for (i = 0; i < N; ++i) {
			min = i;
			for (j = i; j < N; ++j) {
				if (num[min] > num[j]) {
					min = j;
				}
			}
			if (min != i) {
				int tmp = num[i];
				num[i] = num[min];
				num[min] = tmp;
				++count;
			}
		}
		for (i = 0; i < N; ++i) {
			System.out.print(num[i]);
			if (i != N - 1) {
				System.out.print(" ");
			}
		}
		System.out.print("\n");
		System.out.println(count);
		sc.close();
	}
}
 import java.util.Scanner; Scanner java.util public class Main{
	public static void main(String args[]) {
		int i, j;// loop counter
		int N/* number of element */, num[]/* array of number */, min/* order number of minimum number */;
		int count = 0;// count number of exchanging number
		Scanner sc = new Scanner(System.in);
		N = sc.nextInt();
		num = new int[N];
		for (i = 0; i < N; ++i) {
			num[i] = sc.nextInt();
		}
		for (i = 0; i < N; ++i) {
			min = i;
			for (j = i; j < N; ++j) {
				if (num[min] > num[j]) {
					min = j;
				}
			}
			if (min != i) {
				int tmp = num[i];
				num[i] = num[min];
				num[min] = tmp;
				++count;
			}
		}
		for (i = 0; i < N; ++i) {
			System.out.print(num[i]);
			if (i != N - 1) {
				System.out.print(" ");
			}
		}
		System.out.print("\n");
		System.out.println(count);
		sc.close();
	}
} Main public static void main(String args[]) {
		int i, j;// loop counter
		int N/* number of element */, num[]/* array of number */, min/* order number of minimum number */;
		int count = 0;// count number of exchanging number
		Scanner sc = new Scanner(System.in);
		N = sc.nextInt();
		num = new int[N];
		for (i = 0; i < N; ++i) {
			num[i] = sc.nextInt();
		}
		for (i = 0; i < N; ++i) {
			min = i;
			for (j = i; j < N; ++j) {
				if (num[min] > num[j]) {
					min = j;
				}
			}
			if (min != i) {
				int tmp = num[i];
				num[i] = num[min];
				num[min] = tmp;
				++count;
			}
		}
		for (i = 0; i < N; ++i) {
			System.out.print(num[i]);
			if (i != N - 1) {
				System.out.print(" ");
			}
		}
		System.out.print("\n");
		System.out.println(count);
		sc.close();
	} main {
		int i, j;// loop counter
		int N/* number of element */, num[]/* array of number */, min/* order number of minimum number */;
		int count = 0;// count number of exchanging number
		Scanner sc = new Scanner(System.in);
		N = sc.nextInt();
		num = new int[N];
		for (i = 0; i < N; ++i) {
			num[i] = sc.nextInt();
		}
		for (i = 0; i < N; ++i) {
			min = i;
			for (j = i; j < N; ++j) {
				if (num[min] > num[j]) {
					min = j;
				}
			}
			if (min != i) {
				int tmp = num[i];
				num[i] = num[min];
				num[min] = tmp;
				++count;
			}
		}
		for (i = 0; i < N; ++i) {
			System.out.print(num[i]);
			if (i != N - 1) {
				System.out.print(" ");
			}
		}
		System.out.print("\n");
		System.out.println(count);
		sc.close();
	} int i i j; j int N N num[] num min/* order number of minimum number */; min int count = 0; count 0 Scanner sc = new Scanner(System.in); sc new Scanner(System.in) N = sc.nextInt() N sc.nextInt() sc.nextInt sc num = new int[N] num new int[N] N for (i = 0; i < N; ++i) {
			num[i] = sc.nextInt();
		} i = 0; i = 0 i 0 i < N i N ++i ++i i {
			num[i] = sc.nextInt();
		} {
			num[i] = sc.nextInt();
		} num[i] = sc.nextInt() num[i] num i sc.nextInt() sc.nextInt sc for (i = 0; i < N; ++i) {
			min = i;
			for (j = i; j < N; ++j) {
				if (num[min] > num[j]) {
					min = j;
				}
			}
			if (min != i) {
				int tmp = num[i];
				num[i] = num[min];
				num[min] = tmp;
				++count;
			}
		} i = 0; i = 0 i 0 i < N i N ++i ++i i {
			min = i;
			for (j = i; j < N; ++j) {
				if (num[min] > num[j]) {
					min = j;
				}
			}
			if (min != i) {
				int tmp = num[i];
				num[i] = num[min];
				num[min] = tmp;
				++count;
			}
		} {
			min = i;
			for (j = i; j < N; ++j) {
				if (num[min] > num[j]) {
					min = j;
				}
			}
			if (min != i) {
				int tmp = num[i];
				num[i] = num[min];
				num[min] = tmp;
				++count;
			}
		} min = i min i for (j = i; j < N; ++j) {
				if (num[min] > num[j]) {
					min = j;
				}
			} j = i; j = i j i j < N j N ++j ++j j {
				if (num[min] > num[j]) {
					min = j;
				}
			} {
				if (num[min] > num[j]) {
					min = j;
				}
			} if (num[min] > num[j]) {
					min = j;
				} num[min] > num[j] num[min] num min num[j] num j {
					min = j;
				} min = j min j if (min != i) {
				int tmp = num[i];
				num[i] = num[min];
				num[min] = tmp;
				++count;
			} min != i min i {
				int tmp = num[i];
				num[i] = num[min];
				num[min] = tmp;
				++count;
			} int tmp = num[i]; tmp num[i] num i num[i] = num[min] num[i] num i num[min] num min num[min] = tmp num[min] num min tmp ++count count for (i = 0; i < N; ++i) {
			System.out.print(num[i]);
			if (i != N - 1) {
				System.out.print(" ");
			}
		} i = 0; i = 0 i 0 i < N i N ++i ++i i {
			System.out.print(num[i]);
			if (i != N - 1) {
				System.out.print(" ");
			}
		} {
			System.out.print(num[i]);
			if (i != N - 1) {
				System.out.print(" ");
			}
		} System.out.print(num[i]) System.out.print System.out System System.out num[i] num i if (i != N - 1) {
				System.out.print(" ");
			} i != N - 1 i N - 1 N 1 {
				System.out.print(" ");
			} System.out.print(" ") System.out.print System.out System System.out " " System.out.print("\n") System.out.print System.out System System.out "\n" System.out.println(count) System.out.println System.out System System.out count sc.close() sc.close sc String args[] args public class Main{
	public static void main(String args[]) {
		int i, j;// loop counter
		int N/* number of element */, num[]/* array of number */, min/* order number of minimum number */;
		int count = 0;// count number of exchanging number
		Scanner sc = new Scanner(System.in);
		N = sc.nextInt();
		num = new int[N];
		for (i = 0; i < N; ++i) {
			num[i] = sc.nextInt();
		}
		for (i = 0; i < N; ++i) {
			min = i;
			for (j = i; j < N; ++j) {
				if (num[min] > num[j]) {
					min = j;
				}
			}
			if (min != i) {
				int tmp = num[i];
				num[i] = num[min];
				num[min] = tmp;
				++count;
			}
		}
		for (i = 0; i < N; ++i) {
			System.out.print(num[i]);
			if (i != N - 1) {
				System.out.print(" ");
			}
		}
		System.out.print("\n");
		System.out.println(count);
		sc.close();
	}
} public class Main{
	public static void main(String args[]) {
		int i, j;// loop counter
		int N/* number of element */, num[]/* array of number */, min/* order number of minimum number */;
		int count = 0;// count number of exchanging number
		Scanner sc = new Scanner(System.in);
		N = sc.nextInt();
		num = new int[N];
		for (i = 0; i < N; ++i) {
			num[i] = sc.nextInt();
		}
		for (i = 0; i < N; ++i) {
			min = i;
			for (j = i; j < N; ++j) {
				if (num[min] > num[j]) {
					min = j;
				}
			}
			if (min != i) {
				int tmp = num[i];
				num[i] = num[min];
				num[min] = tmp;
				++count;
			}
		}
		for (i = 0; i < N; ++i) {
			System.out.print(num[i]);
			if (i != N - 1) {
				System.out.print(" ");
			}
		}
		System.out.print("\n");
		System.out.println(count);
		sc.close();
	}
} Main
import java.util.Scanner;

public class Main{
	public static void main(String args[]) {
		int i, j;// loop counter
		int N/* number of element */, num[]/* array of number */, min/* order number of minimum number */;
		int count = 0;// count number of exchanging number
		Scanner sc = new Scanner(System.in);
		N = sc.nextInt();
		num = new int[N];
		for (i = 0; i < N; ++i) {
			num[i] = sc.nextInt();
		}
		for (i = 0; i < N; ++i) {
			min = i;
			for (j = i; j < N; ++j) {
				if (num[min] > num[j]) {
					min = j;
				}
			}
			if (min != i) {
				int tmp = num[i];
				num[i] = num[min];
				num[min] = tmp;
				++count;
			}
		}
		for (i = 0; i < N; ++i) {
			System.out.print(num[i]);
			if (i != N - 1) {
				System.out.print(" ");
			}
		}
		System.out.print("\n");
		System.out.println(count);
		sc.close();
	}
}

