def insection_sort(lst):
    lens=len(lst)
    ans=0
    for i in xrange(lens):
        mn=i
        for j in xrange(i+1,lens):
            if(lst[j]<lst[mn]):
                mn=j
        if(mn!=i):
            tmp=lst[i]
            lst[i]=lst[mn]
            lst[mn]=tmp
            ans+=1
    return ans
num=int(raw_input().strip())
arr=map(int,raw_input().strip().split())
ans=insection_sort(arr)
print " ".join(str(pp) for pp in arr)
print ans
 def insection_sort(lst):
    lens=len(lst)
    ans=0
    for i in xrange(lens):
        mn=i
        for j in xrange(i+1,lens):
            if(lst[j]<lst[mn]):
                mn=j
        if(mn!=i):
            tmp=lst[i]
            lst[i]=lst[mn]
            lst[mn]=tmp
            ans+=1
    return ans insection_sort lens=len(lst) lens len(lst) len lst ans=0 ans 0 for i in xrange(lens):
        mn=i
        for j in xrange(i+1,lens):
            if(lst[j]<lst[mn]):
                mn=j
        if(mn!=i):
            tmp=lst[i]
            lst[i]=lst[mn]
            lst[mn]=tmp
            ans+=1
     i xrange(lens) xrange lens mn=i mn i for j in xrange(i+1,lens):
            if(lst[j]<lst[mn]):
                mn=j
         j xrange(i+1,lens) xrange i+1 i 1 lens if(lst[j]<lst[mn]):
                mn=j
         lst[j]<lst[mn] lst[j] lst j lst[mn] lst mn mn=j mn j if(mn!=i):
            tmp=lst[i]
            lst[i]=lst[mn]
            lst[mn]=tmp
            ans+=1
     mn!=i mn i tmp=lst[i] tmp lst[i] lst i lst[i]=lst[mn] lst[i] lst i lst[mn] lst mn lst[mn]=tmp lst[mn] lst mn tmp ans+=1 ans 1 return ans ans lst lst num=int(raw_input().strip()) num int(raw_input().strip()) int raw_input().strip() ().strip () raw_input strip arr=map(int,raw_input().strip().split()) arr map(int,raw_input().strip().split()) map int raw_input().strip().split() ().strip().split ().strip() ().strip () raw_input strip split ans=insection_sort(arr) ans insection_sort(arr) insection_sort arr print " ".join(str(pp) for pp in arr) " ".join " " join str(pp) str pp print num=int(raw_input().strip()) int(raw_input().strip()) num arr=map(int,raw_input().strip().split()) map(int,raw_input().strip().split()) arr ans=insection_sort(arr) insection_sort(arr) ans def insection_sort(lst):
    lens=len(lst)
    ans=0
    for i in xrange(lens):
        mn=i
        for j in xrange(i+1,lens):
            if(lst[j]<lst[mn]):
                mn=j
        if(mn!=i):
            tmp=lst[i]
            lst[i]=lst[mn]
            lst[mn]=tmp
            ans+=1
    return ans def insection_sort(lst):
    lens=len(lst)
    ans=0
    for i in xrange(lens):
        mn=i
        for j in xrange(i+1,lens):
            if(lst[j]<lst[mn]):
                mn=j
        if(mn!=i):
            tmp=lst[i]
            lst[i]=lst[mn]
            lst[mn]=tmp
            ans+=1
    return ans insection_sort
def insection_sort(lst):
    lens=len(lst)
    ans=0
    for i in xrange(lens):
        mn=i
        for j in xrange(i+1,lens):
            if(lst[j]<lst[mn]):
                mn=j
        if(mn!=i):
            tmp=lst[i]
            lst[i]=lst[mn]
            lst[mn]=tmp
            ans+=1
    return ans
num=int(raw_input().strip())
arr=map(int,raw_input().strip().split())
ans=insection_sort(arr)
print " ".join(str(pp) for pp in arr)
print ans

