夏令营把每个营员分进一间木屋,campers 里每个人有 Name 和 Cabin。写 ByCabin(campers),返回一个 map:每间木屋对应住进去的名字(按原来的顺序)。没有人就是空的 map。
ByCabin([]Camper{{"Li", "Oak"}, {"Bo", "Pine"}, {"Mia", "Oak"}})→{'Oak': ['Li', 'Mia'], 'Pine': ['Bo']}ByCabin([]Camper{})→{}func ByCabin(campers []Camper) map[string][]stringpackage main
type Camper struct {
Name string
Cabin string
}
func ByCabin(campers []Camper) map[string][]string {
cabins := map[string][]string{}
for _, c := range campers {
// 在这里写:把 c.Name 加到 c.Cabin 那一间的名单后面
}
return cabins
}
写好了先点「运行」试试示例,没问题再点「提交」。