题解 | #查找兄弟单词#
查找兄弟单词
https://www.nowcoder.com/practice/03ba8aeeef73400ca7a37a5f3370fe68
Go语言完成
输入一段字符串
提取其中元素进行操作即可
package main
import (
"bufio"
"fmt"
"os"
"sort"
"strconv"
"strings"
)
func main() {
input := bufio.NewScanner(os.Stdin)
input.Scan()
char := input.Text()
char1 := strings.Fields(char)
k, _ := strconv.Atoi(char1[len(char1)-1])
str := []rune(char1[len(char1)-2])
str1 := strings.Builder{}
var num int
sort.Slice(str, func(i, j int) bool {
return str[i] < str[j]
})
for i := 1; i <= len(char1)-2; i++ {
str2 := []rune(char1[i])
sort.Slice(str2, func(i, j int) bool {
return str2[i] < str2[j]
})
if string(str2) == string(str) {
if char1[i] != char1[len(char1)-2] {
num++
str1.WriteString(char1[i] + " ")
}
}
}
str3 := strings.Fields(str1.String())
sort.Strings(str3)
fmt.Println(num)
if len(str3) > k {
fmt.Println(str3[k-1])
}
}
