#2970. 图书馆晨间整理

图书馆晨间整理

背景

志愿者在清晨整理书架。每一轮,他们要在未排序部分里“选出最小书号”,并把它放到未排序部分最前面(如有必要与当前位置交换一次)——这就是选择排序。

选择排序

给定一个整数序列,请将其按非降序输出。同时,若按照经典选择排序执行(每轮若最小值不在 i 位置则交换一次),请输出交换次数。

输入格式

第一行:整数 n(1 ≤ n ≤ 1000)

第二行:n 个整数 a[i](0 ≤ a[i] ≤ 1000)

输出格式

第一行:从小到大排序后的序列(空格分隔)

第二行:一个整数——在经典选择排序下的交换次数

样例

5
20 5 18 7 7
5 7 7 18 20
4