package main
import (
"fmt"
)
func main() {
num := 0
for {
n, _ := fmt.Scan(&num)
if n == 0 {
break
} else {
arr := make([]int, num)
for i:=0; i<len(arr); i++ {
fmt.Scan(&arr[i])
}
less := 0
i := 1
for i<num { // 这里假设less都边界为board=(num+1/2+1),
//应该可以提前终止判断的,好像不行没有想通 && less<board, 不过两者条件没有必然关系
if arr[i] != arr[less] {
less++
arr[i], arr[less] = arr[less], arr[i]
i++
} else {
i++
}
}
for i:=0; i<num; i++ {
if i==num-1 {
fmt.Println(arr[i])
} else {
fmt.Printf("%d ", arr[i])
}
}
}
}
}

京公网安备 11010502036488号