import sys

def print_arr(arr):
	for i in range(len(arr)):
		sys.stdout.write(str(arr[i]))
		if i != len(arr) - 1:
			sys.stdout.write(' ')
	print()

def selection_sort(arr):
	cnt = 0
	n = len(arr)
	for i in range(n):
		mini = i
		for j in range(i + 1, n):
			if arr[j] < arr[mini]:
				mini = j
		if mini != i:
			temp = arr[i]
			arr[i] = arr[mini]
			arr[mini] = temp
			cnt += 1
	return cnt

n = int(input())
arr = list(map(int, input().split()))

cnt = selection_sort(arr)
print_arr(arr)
print(cnt) import sys sys def print_arr(arr):
	for i in range(len(arr)):
		sys.stdout.write(str(arr[i]))
		if i != len(arr) - 1:
			sys.stdout.write(' ')
	print() print_arr for i in range(len(arr)):
		sys.stdout.write(str(arr[i]))
		if i != len(arr) - 1:
			sys.stdout.write(' ')
	 i range(len(arr)) range len(arr) len arr sys.stdout.write(str(arr[i])) sys.stdout.write sys.stdout sys stdout write str(arr[i]) str arr[i] arr i if i != len(arr) - 1:
			sys.stdout.write(' ')
	 i != len(arr) - 1 i len(arr) - 1 len(arr) len arr 1 sys.stdout.write(' ') sys.stdout.write sys.stdout sys stdout write ' ' print() print arr arr def selection_sort(arr):
	cnt = 0
	n = len(arr)
	for i in range(n):
		mini = i
		for j in range(i + 1, n):
			if arr[j] < arr[mini]:
				mini = j
		if mini != i:
			temp = arr[i]
			arr[i] = arr[mini]
			arr[mini] = temp
			cnt += 1
	return cnt selection_sort cnt = 0 cnt 0 n = len(arr) n len(arr) len arr for i in range(n):
		mini = i
		for j in range(i + 1, n):
			if arr[j] < arr[mini]:
				mini = j
		if mini != i:
			temp = arr[i]
			arr[i] = arr[mini]
			arr[mini] = temp
			cnt += 1
	 i range(n) range n mini = i mini i for j in range(i + 1, n):
			if arr[j] < arr[mini]:
				mini = j
		 j range(i + 1, n) range i + 1 i 1 n if arr[j] < arr[mini]:
				mini = j
		 arr[j] < arr[mini] arr[j] arr j arr[mini] arr mini mini = j mini j if mini != i:
			temp = arr[i]
			arr[i] = arr[mini]
			arr[mini] = temp
			cnt += 1
	 mini != i mini i temp = arr[i] temp arr[i] arr i arr[i] = arr[mini] arr[i] arr i arr[mini] arr mini arr[mini] = temp arr[mini] arr mini temp cnt += 1 cnt 1 return cnt cnt arr arr n = int(input()) n int(input()) int input() input arr = list(map(int, input().split())) arr list(map(int, input().split())) list map(int, input().split()) map int input().split() ().split () input split cnt = selection_sort(arr) cnt selection_sort(arr) selection_sort arr print_arr(arr) print_arr arr print(cnt) print cnt arr = list(map(int, input().split())) list(map(int, input().split())) arr def print_arr(arr):
	for i in range(len(arr)):
		sys.stdout.write(str(arr[i]))
		if i != len(arr) - 1:
			sys.stdout.write(' ')
	print() def print_arr(arr):
	for i in range(len(arr)):
		sys.stdout.write(str(arr[i]))
		if i != len(arr) - 1:
			sys.stdout.write(' ')
	print() print_arr def selection_sort(arr):
	cnt = 0
	n = len(arr)
	for i in range(n):
		mini = i
		for j in range(i + 1, n):
			if arr[j] < arr[mini]:
				mini = j
		if mini != i:
			temp = arr[i]
			arr[i] = arr[mini]
			arr[mini] = temp
			cnt += 1
	return cnt def selection_sort(arr):
	cnt = 0
	n = len(arr)
	for i in range(n):
		mini = i
		for j in range(i + 1, n):
			if arr[j] < arr[mini]:
				mini = j
		if mini != i:
			temp = arr[i]
			arr[i] = arr[mini]
			arr[mini] = temp
			cnt += 1
	return cnt selection_sort cnt = selection_sort(arr) selection_sort(arr) cnt n = int(input()) int(input()) n
import sys

def print_arr(arr):
	for i in range(len(arr)):
		sys.stdout.write(str(arr[i]))
		if i != len(arr) - 1:
			sys.stdout.write(' ')
	print()

def selection_sort(arr):
	cnt = 0
	n = len(arr)
	for i in range(n):
		mini = i
		for j in range(i + 1, n):
			if arr[j] < arr[mini]:
				mini = j
		if mini != i:
			temp = arr[i]
			arr[i] = arr[mini]
			arr[mini] = temp
			cnt += 1
	return cnt

n = int(input())
arr = list(map(int, input().split()))

cnt = selection_sort(arr)
print_arr(arr)
print(cnt)
