| 123456789101112131415161718192021222324252627282930313233 | package mainimport (	"fmt")func main() {	var str []rune	var s string	_, err := fmt.Scanln(&s)	for err == nil {		str = []rune(s)		for i, j := len(str)-1, len(str)-1; 1 <= i && 0 <= j; i-- {			if isLower(str[i]) {				for j = i - 1; 0 <= j && isLower(str[j]); j-- {				}				if j == -1 {					break				}				for k := j + 1; k <= i; k++ {					str[k-1], str[k] = str[k], str[k-1]				}				j--			}		}		fmt.Println(string(str))		_, err = fmt.Scanln(&s)	}}func isLower(b rune) bool {	return 'a' <= b && b <= 'z'}
 |