题解 | 数据分类处理
数据分类处理
https://www.nowcoder.com/practice/9a763ed59c7243bd8ab706b2da52b7fd
package main
import (
"bufio"
"fmt"
"os"
"strconv"
"sort"
"strings"
)
func main() {
input := bufio.NewScanner(os.Stdin)
input.Scan()
nums1 := input.Text()
list_i := strings.Split(nums1, " ")
nums_i := list_i[1:]
input.Scan()
nums2 := input.Text()
list_r := strings.Split(nums2, " ")
len_r, _ := strconv.Atoi(list_r[0])
nums := list_r[1:]
nums_r := make([]int, len_r)
for i, num := range nums {
nums_r[i], _ = strconv.Atoi(num)
}
sort.Ints(nums_r)
var res []string
for i:=0;i<len_r;i++ {
if i >= 1 && nums_r[i] == nums_r[i-1]{
continue
}
nr:= strconv.Itoa(nums_r[i])
var tmp []string
for j, num := range nums_i {
strj := strconv.Itoa(j)
if strings.Contains(num, nr) {
tmp = append(tmp, strj, num)
}
}
if len(tmp) > 0 {
ni := strconv.Itoa(len(tmp)/2)
res = append(res, nr, ni)
res = append(res, tmp...)
}
}
fmt.Print(len(res))
for _, r := range res {
fmt.Print(" "+r)
}
}
查看14道真题和解析