#include<bits/stdc++.h>
using namespace std;
int main(){
//1.建立一个int变量n ,建立一个int数组 300
int n,a[300],w=0;
//再定义一个int变量x
int zx=INT_MAX;
//2.先输入n
cin>>n;
//3.循环输入数组
for(int i=0;i<n;i++) {
cin>>a[i];
}
//3.循环一个个数判断过去谁是最小数
for(int i=0;i<n;i++) {
if(a[i]<zx) {
zx=a[i];
}
}
//循环再去找一遍第一次出现的最小数的位置
for(int i=0;i<n;i++){
if(a[i]==zx){
//4.判断最小数的位置,w
w=i+1;
break;
}
}
//5.最小数跟第一个数交换
swap(a[w-1],a[0]);
//6.输出w
cout<<w<<endl;
//7.循环输出
for(int i=0;i<n;i++) {
cout<<a[i]<<" ";
}
return 0;
}
/**************************************************************
Problem: 1157
User: hulaoshi
Language: C++
Result: Accepted
Time:8 ms
Memory:2072 kb
****************************************************************/